https://codeforces.com/gym/101982/attachments

K 打表暴力

  1. /*#include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. map<int,double> dmin,dmax;
  5.  
  6. bool legal(int n){
  7. int a[10]={};
  8. int cur=10;
  9. while(n){
  10. int t=n%10;
  11. if(t==0||a[t]||t>=cur)
  12. return false;
  13. cur=t;
  14. a[t]++;
  15. n/=10;
  16. }
  17. return true;
  18. }
  19.  
  20. int main(){
  21. int cnt=0;
  22. freopen("Yinku.out","w",stdout);
  23. for(int i=1;i<=123456789;i++){
  24. if(legal(i)){
  25. //calc(i);
  26. printf("%d,",i);
  27. cnt++;
  28. }
  29. }
  30. cerr<<cnt<<endl;
  31. }*/
  32.  
  33. /*int num[]={1,2,3,4,5,6,7,8,9,12,13,14,15,16,17,18,19,23,24,25,26,27,28,29,34,35,36,37,38,39,45,46,47,48,49,56,57,58,59,67,68,69,78,79,89,
  34. 123,124,125,126,127,128,129,134,135,136,137,138,139,145,146,147,148,149,156,157,158,159,167,168,169,178,179,189,234,235,236,237,238,239,245,
  35. 246,247,248,249,256,257,258,259,267,268,269,278,279,289,345,346,347,348,349,356,357,358,359,367,368,369,378,379,389,456,457,458,459,467,468,
  36. 469,478,479,489,567,568,569,578,579,589,678,679,689,789,1234,1235,1236,1237,1238,1239,1245,1246,1247,1248,1249,1256,1257,1258,1259,1267,1268,
  37. 1269,1278,1279,1289,1345,1346,1347,1348,1349,1356,1357,1358,1359,1367,1368,1369,1378,1379,1389,1456,1457,1458,1459,1467,1468,1469,1478,1479,
  38. 1489,1567,1568,1569,1578,1579,1589,1678,1679,1689,1789,2345,2346,2347,2348,2349,2356,2357,2358,2359,2367,2368,2369,2378,2379,2389,2456,2457,
  39. 2458,2459,2467,2468,2469,2478,2479,2489,2567,2568,2569,2578,2579,2589,2678,2679,2689,2789,3456,3457,3458,3459,3467,3468,3469,3478,3479,3489,
  40. 3567,3568,3569,3578,3579,3589,3678,3679,3689,3789,4567,4568,4569,4578,4579,4589,4678,4679,4689,4789,5678,5679,5689,5789,6789,12345,12346,12347,
  41. 12348,12349,12356,12357,12358,12359,12367,12368,12369,12378,12379,12389,12456,12457,12458,12459,12467,12468,12469,12478,12479,12489,12567,12568,
  42. 12569,12578,12579,12589,12678,12679,12689,12789,13456,13457,13458,13459,13467,13468,13469,13478,13479,13489,13567,13568,13569,13578,13579,13589,
  43. 13678,13679,13689,13789,14567,14568,14569,14578,14579,14589,14678,14679,14689,14789,15678,15679,15689,15789,16789,23456,23457,23458,23459,23467,
  44. 23468,23469,23478,23479,23489,23567,23568,23569,23578,23579,23589,23678,23679,23689,23789,24567,24568,24569,24578,24579,24589,24678,24679,24689,
  45. 24789,25678,25679,25689,25789,26789,34567,34568,34569,34578,34579,34589,34678,34679,34689,34789,35678,35679,35689,35789,36789,45678,45679,45689,
  46. 45789,46789,56789,123456,123457,123458,123459,123467,123468,123469,123478,123479,123489,123567,123568,123569,123578,123579,123589,123678,123679,
  47. 123689,123789,124567,124568,124569,124578,124579,124589,124678,124679,124689,124789,125678,125679,125689,125789,126789,134567,134568,134569,
  48. 134578,134579,134589,134678,134679,134689,134789,135678,135679,135689,135789,136789,145678,145679,145689,145789,146789,156789,234567,234568,
  49. 234569,234578,234579,234589,234678,234679,234689,234789,235678,235679,235689,235789,236789,245678,245679,245689,245789,246789,256789,345678,
  50. 345679,345689,345789,346789,356789,456789,1234567,1234568,1234569,1234578,1234579,1234589,1234678,1234679,1234689,1234789,1235678,1235679,
  51. 1235689,1235789,1236789,1245678,1245679,1245689,1245789,1246789,1256789,1345678,1345679,1345689,1345789,1346789,1356789,1456789,2345678,2345679,
  52. 2345689,2345789,2346789,2356789,2456789,3456789,12345678,12345679,12345689,12345789,12346789,12356789,12456789,13456789,23456789,123456789};
  53.  
  54. double p[13];
  55.  
  56. map<int,double> dmin,dmax;
  57.  
  58. int link(vector<int> s,int ex1,int ex2=-1,int ex3=-1,int ex4=-1){
  59. int ans=0;
  60. int n=s.size();
  61. for(int i=0;i<n;i++){
  62. if(i==ex1||i==ex2||i==ex3||i==ex4)
  63. continue;
  64. else{
  65. ans*=10;
  66. ans+=s[i];
  67. }
  68. }
  69. return ans;
  70. }
  71.  
  72. vector<int> findnextstate(int state,int sum){
  73. vector<int>ans;
  74.  
  75. //cout<<"state="<<state<<" has next states:\n ";
  76. vector<int> s;
  77. while(state){
  78. s.push_back(state%10);
  79. state/=10;
  80. }
  81. reverse(s.begin(),s.end());
  82. int n=s.size();
  83. for(int i=0;i<n;i++){
  84. if(s[i]==sum){
  85. ans.push_back(link(s,i));
  86. break;
  87. }
  88. }
  89.  
  90. for(int i=0;i<n;i++){
  91. for(int j=i+1;j<n;j++){
  92. if(s[i]+s[j]==sum){
  93. ans.push_back(link(s,i,j));
  94. break;
  95. }
  96. }
  97. }
  98.  
  99. for(int i=0;i<n;i++){
  100. for(int j=i+1;j<n;j++){
  101. for(int k=j+1;k<n;k++){
  102. if(s[i]+s[j]+s[k]==sum){
  103. ans.push_back(link(s,i,j,k));
  104. break;
  105. }
  106. }
  107. }
  108. }
  109.  
  110. for(int i=0;i<n;i++){
  111. for(int j=i+1;j<n;j++){
  112. for(int k=j+1;k<n;k++){
  113. for(int l=k+1;l<n;l++){
  114. if(s[i]+s[j]+s[k]+s[l]==sum){
  115. ans.push_back(link(s,i,j,k,l));
  116. break;
  117. }
  118. }
  119. }
  120. }
  121. }
  122.  
  123. for(auto i:ans){
  124. cout<<i<<",";
  125. }
  126. cout<<endl;
  127. return ans;
  128. }
  129.  
  130. void calc(int state){
  131. double minans=0;
  132. double maxans=0;
  133. vector<int> ns;
  134. for(int sum=2;sum<=12;sum++){
  135. ns=findnextstate(state,sum);
  136. if(ns.size()==0){
  137. minans+=p[sum]*state;
  138. maxans+=p[sum]*state;
  139. }
  140. else{
  141. double nmax=-1.0;
  142. double nmin=1e30;
  143. for(auto nsi:ns){
  144. nmax=max(nmax,dmax[nsi]);
  145. nmin=min(nmin,dmin[nsi]);
  146. }
  147.  
  148. maxans+=p[sum]*nmax;
  149. minans+=p[sum]*nmin;
  150. }
  151. }
  152.  
  153. dmax[state]=maxans;
  154. dmin[state]=minans;
  155.  
  156. cerr<<"state="<<state<<" dmax="<<maxans<<" dmin="<<minans<<endl;
  157. printf("dmax[%d]=%.10f;\ndmin[%d]=%.10f;\n",state,maxans,state,minans);
  158. cout<<"dmax["<<state<<"]="<<maxans<<";\n";
  159. cout<<"dmin["<<state<<"]="<<minans<<";\n";
  160. }
  161.  
  162. int ntop=511;
  163. int main(){
  164. freopen("Yinku.out","w",stdout);
  165.  
  166. for(int sum=2;sum<=7;sum++){
  167. p[sum]=1.0*(sum-1)/36;
  168. }
  169. for(int sum=8;sum<=12;sum++){
  170. p[sum]=1.0*(13-sum)/36;
  171. }
  172.  
  173. for(int sum=2;sum<=12;sum++){
  174. cout<<"p["<<sum<<"]="<<p[sum]<<endl;
  175. }
  176.  
  177. for(int i=0;i<ntop;i++){
  178. calc(num[i]);
  179. }
  180. }*/
  181.  
  182. #include<bits/stdc++.h>
  183. using namespace std;
  184. map<int,double> dmax,dmin;
  185.  
  186. void init(){
  187. dmax[]=1.0000000000;
  188. dmin[]=1.0000000000;
  189. dmax[]=1.9444444444;
  190. dmin[]=1.9444444444;
  191. dmax[]=2.8333333333;
  192. dmin[]=2.8333333333;
  193. dmax[]=3.6666666667;
  194. dmin[]=3.6666666667;
  195. dmax[]=4.4444444444;
  196. dmin[]=4.4444444444;
  197. dmax[]=5.1666666667;
  198. dmin[]=5.1666666667;
  199. dmax[]=5.8333333333;
  200. dmin[]=5.8333333333;
  201. dmax[]=6.8888888889;
  202. dmin[]=6.8888888889;
  203. dmax[]=8.0000000000;
  204. dmin[]=8.0000000000;
  205. dmax[]=11.0277777778;
  206. dmin[]=11.0277777778;
  207. dmax[]=11.2500000000;
  208. dmin[]=11.2500000000;
  209. dmax[]=11.3611111111;
  210. dmin[]=11.3611111111;
  211. dmax[]=11.3611111111;
  212. dmin[]=11.3611111111;
  213. dmax[]=11.2500000000;
  214. dmin[]=11.2500000000;
  215. dmax[]=11.9722222222;
  216. dmin[]=11.9722222222;
  217. dmax[]=13.6388888889;
  218. dmin[]=13.6388888889;
  219. dmax[]=15.4166666667;
  220. dmin[]=15.4166666667;
  221. dmax[]=18.7145061728;
  222. dmin[]=18.7145061728;
  223. dmax[]=18.2638888889;
  224. dmin[]=18.2638888889;
  225. dmax[]=17.7006172840;
  226. dmin[]=17.7006172840;
  227. dmax[]=18.4691358025;
  228. dmin[]=18.4691358025;
  229. dmax[]=19.2361111111;
  230. dmin[]=19.2361111111;
  231. dmax[]=21.4614197531;
  232. dmin[]=21.4614197531;
  233. dmax[]=23.7993827160;
  234. dmin[]=23.7993827160;
  235. dmax[]=24.0509259259;
  236. dmin[]=24.0509259259;
  237. dmax[]=24.8672839506;
  238. dmin[]=24.8672839506;
  239. dmax[]=25.6805555556;
  240. dmin[]=25.6805555556;
  241. dmax[]=26.4907407407;
  242. dmin[]=26.4907407407;
  243. dmax[]=29.2762345679;
  244. dmin[]=29.2762345679;
  245. dmax[]=32.1759259259;
  246. dmin[]=32.1759259259;
  247. dmax[]=32.0277777778;
  248. dmin[]=32.0277777778;
  249. dmax[]=32.8842592593;
  250. dmin[]=32.8842592593;
  251. dmax[]=33.7361111111;
  252. dmin[]=33.7361111111;
  253. dmax[]=37.0833333333;
  254. dmin[]=37.0833333333;
  255. dmax[]=40.5462962963;
  256. dmin[]=40.5462962963;
  257. dmax[]=40.0802469136;
  258. dmin[]=40.0802469136;
  259. dmax[]=40.9722222222;
  260. dmin[]=40.9722222222;
  261. dmax[]=44.8827160494;
  262. dmin[]=44.8827160494;
  263. dmax[]=47.2716049383;
  264. dmin[]=47.2716049383;
  265. dmax[]=48.1990740741;
  266. dmin[]=48.1990740741;
  267. dmax[]=50.7854938272;
  268. dmin[]=50.7854938272;
  269. dmax[]=53.4351851852;
  270. dmin[]=53.4351851852;
  271. dmax[]=56.1250000000;
  272. dmin[]=56.1250000000;
  273. dmax[]=59.0370370370;
  274. dmin[]=59.0370370370;
  275. dmax[]=68.6265432099;
  276. dmin[]=68.6265432099;
  277. dmax[]=72.9483024691;
  278. dmin[]=72.4930555556;
  279. dmax[]=53.4598765432;
  280. dmin[]=53.4598765432;
  281. dmax[]=47.3634259259;
  282. dmin[]=47.3634259259;
  283. dmax[]=48.0941358025;
  284. dmin[]=48.0941358025;
  285. dmax[]=55.7924382716;
  286. dmin[]=55.7924382716;
  287. dmax[]=70.1481481481;
  288. dmin[]=70.1481481481;
  289. dmax[]=84.7322530864;
  290. dmin[]=84.7322530864;
  291. dmax[]=61.6057098765;
  292. dmin[]=60.9737654321;
  293. dmax[]=51.5339506173;
  294. dmin[]=51.5339506173;
  295. dmax[]=52.3125000000;
  296. dmin[]=52.3125000000;
  297. dmax[]=60.5864197531;
  298. dmin[]=60.5864197531;
  299. dmax[]=76.0979938272;
  300. dmin[]=76.0979938272;
  301. dmax[]=91.8425925926;
  302. dmin[]=91.8425925926;
  303. dmax[]=71.3016975309;
  304. dmin[]=70.5331790123;
  305. dmax[]=56.5061728395;
  306. dmin[]=56.5061728395;
  307. dmax[]=65.3541666667;
  308. dmin[]=65.3541666667;
  309. dmax[]=82.0262345679;
  310. dmin[]=82.0262345679;
  311. dmax[]=94.7970679012;
  312. dmin[]=94.7970679012;
  313. dmax[]=81.6242283951;
  314. dmin[]=80.7638888889;
  315. dmax[]=70.0956790123;
  316. dmin[]=70.0956790123;
  317. dmax[]=83.5439814815;
  318. dmin[]=83.5439814815;
  319. dmax[]=92.7901234568;
  320. dmin[]=92.7901234568;
  321. dmax[]=97.0331790123;
  322. dmin[]=96.1304012346;
  323. dmax[]=79.8456790123;
  324. dmin[]=79.8456790123;
  325. dmax[]=89.6550925926;
  326. dmin[]=89.6550925926;
  327. dmax[]=108.4174382716;
  328. dmin[]=107.7114197531;
  329. dmax[]=94.9969135802;
  330. dmin[]=94.9969135802;
  331. dmax[]=130.2307098765;
  332. dmin[]=129.6041666667;
  333. dmax[]=75.8672839506;
  334. dmin[]=75.8672839506;
  335. dmax[]=102.4124657064;
  336. dmin[]=100.8269032922;
  337. dmax[]=90.7445130316;
  338. dmin[]=90.7445130316;
  339. dmax[]=104.7986111111;
  340. dmin[]=104.7986111111;
  341. dmax[]=131.3254458162;
  342. dmin[]=131.3254458162;
  343. dmax[]=151.4512174211;
  344. dmin[]=151.4512174211;
  345. dmax[]=80.6995884774;
  346. dmin[]=80.6995884774;
  347. dmax[]=128.6604938272;
  348. dmin[]=126.8414351852;
  349. dmax[]=109.8263888889;
  350. dmin[]=109.8263888889;
  351. dmax[]=130.6715534979;
  352. dmin[]=130.6715534979;
  353. dmax[]=151.7037037037;
  354. dmin[]=151.7037037037;
  355. dmax[]=99.6547496571;
  356. dmin[]=99.6547496571;
  357. dmax[]=149.5511831276;
  358. dmin[]=147.5733024691;
  359. dmax[]=129.4416152263;
  360. dmin[]=129.4416152263;
  361. dmax[]=144.1989026063;
  362. dmin[]=144.1989026063;
  363. dmax[]=119.7229938272;
  364. dmin[]=119.7229938272;
  365. dmax[]=171.1649519890;
  366. dmin[]=169.5565843621;
  367. dmax[]=150.2122770919;
  368. dmin[]=150.2122770919;
  369. dmax[]=140.3369341564;
  370. dmin[]=140.3369341564;
  371. dmax[]=186.3179012346;
  372. dmin[]=185.0694444444;
  373. dmax[]=177.2290809328;
  374. dmin[]=177.2290809328;
  375. dmax[]=113.5054012346;
  376. dmin[]=113.5054012346;
  377. dmax[]=133.7564300412;
  378. dmin[]=133.7564300412;
  379. dmax[]=201.3310185185;
  380. dmin[]=198.2947530864;
  381. dmax[]=173.6041666667;
  382. dmin[]=173.6041666667;
  383. dmax[]=202.9302983539;
  384. dmin[]=202.9302983539;
  385. dmax[]=148.3471364883;
  386. dmin[]=148.3471364883;
  387. dmax[]=159.3734567901;
  388. dmin[]=159.3734567901;
  389. dmax[]=238.1693244170;
  390. dmin[]=235.6723251029;
  391. dmax[]=209.6433470508;
  392. dmin[]=209.6433470508;
  393. dmax[]=174.8269032922;
  394. dmin[]=174.8269032922;
  395. dmax[]=195.5067729767;
  396. dmin[]=195.5067729767;
  397. dmax[]=256.4344135802;
  398. dmin[]=254.4699074074;
  399. dmax[]=201.5748456790;
  400. dmin[]=201.5748456790;
  401. dmax[]=222.9701646091;
  402. dmin[]=222.9701646091;
  403. dmax[]=249.8924039781;
  404. dmin[]=249.8924039781;
  405. dmax[]=202.5902777778;
  406. dmin[]=202.5902777778;
  407. dmax[]=216.6087962963;
  408. dmin[]=216.6087962963;
  409. dmax[]=254.9200102881;
  410. dmin[]=254.9200102881;
  411. dmax[]=330.7530864198;
  412. dmin[]=328.0833333333;
  413. dmax[]=235.4837962963;
  414. dmin[]=235.4837962963;
  415. dmax[]=261.6674382716;
  416. dmin[]=261.6674382716;
  417. dmax[]=287.9881687243;
  418. dmin[]=287.9881687243;
  419. dmax[]=268.3657407407;
  420. dmin[]=268.3657407407;
  421. dmax[]=295.2870370370;
  422. dmin[]=295.2870370370;
  423. dmax[]=328.1095679012;
  424. dmin[]=328.1095679012;
  425. dmax[]=301.6936728395;
  426. dmin[]=301.6936728395;
  427. dmax[]=333.3815157750;
  428. dmin[]=333.3815157750;
  429. dmax[]=349.3172153635;
  430. dmin[]=349.3172153635;
  431. dmax[]=340.7096193416;
  432. dmin[]=340.7096193416;
  433. dmax[]=356.9629629630;
  434. dmin[]=356.9629629630;
  435. dmax[]=395.4831961591;
  436. dmin[]=395.4831961591;
  437. dmax[]=399.6203703704;
  438. dmin[]=399.6203703704;
  439. dmax[]=418.5442386831;
  440. dmin[]=418.5442386831;
  441. dmax[]=443.6514060357;
  442. dmin[]=443.6514060357;
  443. dmax[]=486.1234567901;
  444. dmin[]=486.1234567901;
  445. dmax[]=119.4546467764;
  446. dmin[]=110.0102023320;
  447. dmax[]=54.2540294925;
  448. dmin[]=43.0411522634;
  449. dmax[]=23.1703103567;
  450. dmin[]=11.6005015432;
  451. dmax[]=25.5880486968;
  452. dmin[]=23.2014317558;
  453. dmax[]=230.4202246228;
  454. dmin[]=227.6310871056;
  455. dmax[]=401.2454561043;
  456. dmin[]=398.0474537037;
  457. dmax[]=20.0291923868;
  458. dmin[]=13.9230967078;
  459. dmax[]=22.9655778464;
  460. dmin[]=14.9202246228;
  461. dmax[]=25.8203446502;
  462. dmin[]=17.8825874486;
  463. dmax[]=26.5225051440;
  464. dmin[]=26.5225051440;
  465. dmax[]=199.7329818244;
  466. dmin[]=199.7329818244;
  467. dmax[]=231.4379286694;
  468. dmin[]=225.4654921125;
  469. dmax[]=199.9688786008;
  470. dmin[]=192.4221107682;
  471. dmax[]=167.3787294239;
  472. dmin[]=161.7572659465;
  473. dmax[]=134.0133744856;
  474. dmin[]=134.0133744856;
  475. dmax[]=377.3278892318;
  476. dmin[]=370.9889403292;
  477. dmax[]=310.0932355967;
  478. dmin[]=304.0210905350;
  479. dmax[]=277.7365826475;
  480. dmin[]=273.2816786694;
  481. dmax[]=490.5290637860;
  482. dmin[]=484.6957304527;
  483. dmax[]=458.3088134431;
  484. dmin[]=452.8862740055;
  485. dmax[]=674.2302383402;
  486. dmin[]=668.2459705075;
  487. dmax[]=135.5098593964;
  488. dmin[]=127.9563614540;
  489. dmax[]=100.7694615912;
  490. dmin[]=96.2972393690;
  491. dmax[]=401.0482253086;
  492. dmin[]=387.5869341564;
  493. dmax[]=365.5969221536;
  494. dmin[]=354.5354938272;
  495. dmax[]=329.1183984911;
  496. dmin[]=324.7734910837;
  497. dmax[]=66.5548268176;
  498. dmin[]=62.2280092593;
  499. dmax[]=69.6111968450;
  500. dmin[]=67.8202160494;
  501. dmax[]=408.8004115226;
  502. dmin[]=401.5396090535;
  503. dmax[]=373.7729766804;
  504. dmin[]=368.9358710562;
  505. dmax[]=260.4957133059;
  506. dmin[]=255.6905435528;
  507. dmax[]=225.5781464335;
  508. dmin[]=224.2401834705;
  509. dmax[]=492.1507201646;
  510. dmin[]=486.5778034979;
  511. dmax[]=419.4829818244;
  512. dmin[]=414.8127143347;
  513. dmax[]=422.7452846365;
  514. dmin[]=421.8224451303;
  515. dmax[]=655.1735253772;
  516. dmin[]=650.1018518519;
  517. dmax[]=354.8067986968;
  518. dmin[]=346.6737825789;
  519. dmax[]=158.3001543210;
  520. dmin[]=155.2708333333;
  521. dmax[]=481.0778034979;
  522. dmin[]=474.8007973251;
  523. dmax[]=723.4605624143;
  524. dmin[]=709.9681927298;
  525. dmax[]=323.5196759259;
  526. dmin[]=319.3485082305;
  527. dmax[]=165.5367369684;
  528. dmin[]=165.5367369684;
  529. dmax[]=410.0457390261;
  530. dmin[]=408.5901063100;
  531. dmax[]=494.4687500000;
  532. dmin[]=490.3422067901;
  533. dmax[]=375.7253086420;
  534. dmin[]=375.7253086420;
  535. dmax[]=706.0543124143;
  536. dmin[]=701.3932184499;
  537. dmax[]=606.5264489026;
  538. dmin[]=596.4591478052;
  539. dmax[]=436.6946587791;
  540. dmin[]=432.0253772291;
  541. dmax[]=523.6325445816;
  542. dmin[]=518.0709876543;
  543. dmax[]=530.5990226337;
  544. dmin[]=527.0187757202;
  545. dmax[]=403.3052126200;
  546. dmin[]=403.3052126200;
  547. dmax[]=711.9952846365;
  548. dmin[]=707.8954046639;
  549. dmax[]=792.9756515775;
  550. dmin[]=782.5008573388;
  551. dmax[]=656.6616941015;
  552. dmin[]=651.4583762003;
  553. dmax[]=664.9979852538;
  554. dmin[]=661.9764660494;
  555. dmax[]=946.1225994513;
  556. dmin[]=936.8689128944;
  557. dmax[]=37.1956018519;
  558. dmin[]=29.5484682213;
  559. dmax[]=42.9060999657;
  560. dmin[]=34.3794152949;
  561. dmax[]=371.8075703018;
  562. dmin[]=360.2605238340;
  563. dmax[]=49.6303798011;
  564. dmin[]=49.6303798011;
  565. dmax[]=571.8996484911;
  566. dmin[]=564.3588391632;
  567. dmax[]=306.9124514175;
  568. dmin[]=299.3814586191;
  569. dmax[]=703.6003086420;
  570. dmin[]=682.3596536351;
  571. dmax[]=902.0576989026;
  572. dmin[]=879.6421896433;
  573. dmax[]=577.4717649749;
  574. dmin[]=565.7200788752;
  575. dmax[]=252.3318329904;
  576. dmin[]=251.6157836077;
  577. dmax[]=714.7542795496;
  578. dmin[]=705.4843178441;
  579. dmax[]=848.5984367856;
  580. dmin[]=840.1232662704;
  581. dmax[]=591.2397976680;
  582. dmin[]=590.8206875857;
  583. dmax[]=923.0631001372;
  584. dmin[]=914.6124399863;
  585. dmax[]=993.9987854367;
  586. dmin[]=993.6945158893;
  587. dmax[]=190.4747085048;
  588. dmin[]=183.9033922039;
  589. dmax[]=737.3722993827;
  590. dmin[]=727.2996399177;
  591. dmax[]=198.4930555556;
  592. dmin[]=198.4930555556;
  593. dmax[]=813.4903978052;
  594. dmin[]=805.7591163695;
  595. dmax[]=475.5123671125;
  596. dmin[]=466.6498413923;
  597. dmax[]=1294.8040123457;
  598. dmin[]=1269.5820687586;
  599. dmax[]=888.5467678326;
  600. dmin[]=874.6962448560;
  601. dmax[]=485.6350951646;
  602. dmin[]=485.6350951646;
  603. dmax[]=1104.2062757202;
  604. dmin[]=1095.8524091221;
  605. dmax[]=904.7705332647;
  606. dmin[]=904.7705332647;
  607. dmax[]=641.2331532922;
  608. dmin[]=632.3825017147;
  609. dmax[]=786.4277692044;
  610. dmin[]=778.6418348003;
  611. dmax[]=717.4419295839;
  612. dmin[]=716.5374371285;
  613. dmax[]=935.7325531550;
  614. dmin[]=923.2384116369;
  615. dmax[]=1363.7049039781;
  616. dmin[]=1338.0081447188;
  617. dmax[]=874.0416666667;
  618. dmin[]=874.0416666667;
  619. dmax[]=978.0735811043;
  620. dmin[]=968.9724651349;
  621. dmax[]=1054.1356310014;
  622. dmin[]=1046.5969221536;
  623. dmax[]=1279.2054040924;
  624. dmin[]=1267.6953446502;
  625. dmax[]=1254.6332304527;
  626. dmin[]=1246.4920124600;
  627. dmax[]=168.6016375171;
  628. dmin[]=167.8963906036;
  629. dmax[]=655.1168552812;
  630. dmin[]=642.1845850480;
  631. dmax[]=946.7671039095;
  632. dmin[]=935.4454446731;
  633. dmax[]=1142.3213305898;
  634. dmin[]=1132.4689643347;
  635. dmax[]=1145.1833419067;
  636. dmin[]=1129.9692858368;
  637. dmax[]=572.7495070302;
  638. dmin[]=572.7495070302;
  639. dmax[]=1249.2494427298;
  640. dmin[]=1238.7290523548;
  641. dmax[]=1446.8596965021;
  642. dmin[]=1426.6103609396;
  643. dmax[]=1546.8643689986;
  644. dmin[]=1522.5447959534;
  645. dmax[]=1361.1638803155;
  646. dmin[]=1361.0275634431;
  647. dmax[]=496.1508916324;
  648. dmin[]=496.1508916324;
  649. dmax[]=1488.6962162780;
  650. dmin[]=1474.1989597622;
  651. dmax[]=1392.6273719707;
  652. dmin[]=1381.1784788904;
  653. dmax[]=1402.0408521948;
  654. dmin[]=1387.2846221994;
  655. dmax[]=1204.1147976680;
  656. dmin[]=1203.8704561043;
  657. dmax[]=1903.6904435299;
  658. dmin[]=1883.8273319616;
  659. dmax[]=1039.7095764746;
  660. dmin[]=1039.7095764746;
  661. dmax[]=1655.0932784636;
  662. dmin[]=1641.9003200732;
  663. dmax[]=1863.1005515546;
  664. dmin[]=1848.7299001677;
  665. dmax[]=1500.8286179698;
  666. dmin[]=1500.8286179698;
  667. dmax[]=1141.9544324417;
  668. dmin[]=1141.6019804527;
  669. dmax[]=1274.9556327160;
  670. dmin[]=1274.9556327160;
  671. dmax[]=2039.4982853224;
  672. dmin[]=2022.5546982167;
  673. dmax[]=1539.4831532922;
  674. dmin[]=1539.3751286008;
  675. dmax[]=2180.6133401920;
  676. dmin[]=2162.6604080933;
  677. dmax[]=2566.9612482853;
  678. dmin[]=2545.8911751257;
  679. dmax[]=1585.1182913237;
  680. dmin[]=1585.1182913237;
  681. dmax[]=1847.5809327846;
  682. dmin[]=1847.5809327846;
  683. dmax[]=2112.5674296982;
  684. dmin[]=2112.5674296982;
  685. dmax[]=2166.8948902606;
  686. dmin[]=2166.8948902606;
  687. dmax[]=2244.1061814129;
  688. dmin[]=2244.1061814129;
  689. dmax[]=2401.0883058985;
  690. dmin[]=2401.0883058985;
  691. dmax[]=2722.0385230910;
  692. dmin[]=2722.0385230910;
  693. dmax[]=2782.1575788752;
  694. dmin[]=2782.1575788752;
  695. dmax[]=3261.3257887517;
  696. dmin[]=3261.3257887517;
  697. dmax[]=68.8936828418;
  698. dmin[]=28.7180236435;
  699. dmax[]=82.1975213382;
  700. dmin[]=24.5750856148;
  701. dmax[]=97.8553848022;
  702. dmin[]=35.8737890089;
  703. dmax[]=111.0048368198;
  704. dmin[]=48.2685899634;
  705. dmax[]=125.3670934309;
  706. dmin[]=64.0274419867;
  707. dmax[]=80.2201562738;
  708. dmin[]=40.8158852976;
  709. dmax[]=84.8537427602;
  710. dmin[]=45.9317605929;
  711. dmax[]=120.4383311424;
  712. dmin[]=67.5882880373;
  713. dmax[]=145.4804431489;
  714. dmin[]=71.4257735101;
  715. dmax[]=97.2667562109;
  716. dmin[]=56.4173965954;
  717. dmax[]=128.7155254534;
  718. dmin[]=76.6345754029;
  719. dmax[]=166.5252867322;
  720. dmin[]=99.9029028064;
  721. dmax[]=148.2070866198;
  722. dmin[]=107.8061104443;
  723. dmax[]=183.2486044429;
  724. dmin[]=152.6676025949;
  725. dmax[]=2258.1909436443;
  726. dmin[]=2217.6901232186;
  727. dmax[]=105.4605302641;
  728. dmin[]=60.3787544296;
  729. dmax[]=101.7739126086;
  730. dmin[]=59.7399584191;
  731. dmax[]=110.8298539666;
  732. dmin[]=75.3271622799;
  733. dmax[]=135.3230595565;
  734. dmin[]=96.1446163885;
  735. dmax[]=130.5791395176;
  736. dmin[]=88.1089356139;
  737. dmax[]=131.5596969784;
  738. dmin[]=87.9305948503;
  739. dmax[]=152.6949076456;
  740. dmin[]=111.8062664323;
  741. dmax[]=150.7718585677;
  742. dmin[]=121.0528406493;
  743. dmax[]=178.6185128029;
  744. dmin[]=138.9066179412;
  745. dmax[]=205.6409000629;
  746. dmin[]=184.3991317063;
  747. dmax[]=1219.8163258745;
  748. dmin[]=1172.6707116389;
  749. dmax[]=1212.2984479786;
  750. dmin[]=1169.0029191196;
  751. dmax[]=1209.8522066949;
  752. dmin[]=1171.2606476718;
  753. dmax[]=1238.1811199703;
  754. dmin[]=1198.0754386717;
  755. dmax[]=1239.3773148148;
  756. dmin[]=1198.6230281207;
  757. dmax[]=1265.9524891404;
  758. dmin[]=1248.3427974013;
  759. dmax[]=3057.8458397634;
  760. dmin[]=2980.0848217688;
  761. dmax[]=2696.2922525149;
  762. dmin[]=2631.3414732891;
  763. dmax[]=2726.7459455018;
  764. dmin[]=2670.1675490112;
  765. dmax[]=4566.0939429012;
  766. dmin[]=4476.9786784598;
  767. dmax[]=488.7487925812;
  768. dmin[]=453.2097276997;
  769. dmax[]=528.7718121285;
  770. dmin[]=458.7735982510;
  771. dmax[]=552.5490612140;
  772. dmin[]=502.7671253429;
  773. dmax[]=1312.8041266575;
  774. dmin[]=1269.4899905693;
  775. dmax[]=556.9534715078;
  776. dmin[]=519.6793195588;
  777. dmax[]=546.3390096308;
  778. dmin[]=508.0636609797;
  779. dmax[]=579.0787822931;
  780. dmin[]=533.8523186252;
  781. dmax[]=2482.9081575789;
  782. dmin[]=2375.8243098422;
  783. dmax[]=2478.6709533608;
  784. dmin[]=2394.8990697874;
  785. dmax[]=2500.0781107110;
  786. dmin[]=2416.7810166133;
  787. dmax[]=555.4991236092;
  788. dmin[]=508.4235229957;
  789. dmax[]=587.4293957667;
  790. dmin[]=543.0868400873;
  791. dmax[]=619.1480933737;
  792. dmin[]=587.4807384545;
  793. dmax[]=641.5332576017;
  794. dmin[]=602.0972174592;
  795. dmax[]=624.8926897577;
  796. dmin[]=600.7332533150;
  797. dmax[]=2946.9804169524;
  798. dmin[]=2873.2640460677;
  799. dmax[]=2141.9245791895;
  800. dmin[]=2115.6638910322;
  801. dmax[]=2196.7535008002;
  802. dmin[]=2123.1369932175;
  803. dmax[]=2228.1483243789;
  804. dmin[]=2201.1028199303;
  805. dmax[]=4162.9569687357;
  806. dmin[]=4106.9212391404;
  807. dmax[]=1443.1123221022;
  808. dmin[]=1400.8586069673;
  809. dmax[]=1482.3117462563;
  810. dmin[]=1412.0010335696;
  811. dmax[]=3545.0566772405;
  812. dmin[]=3432.3871694483;
  813. dmax[]=1502.5136674097;
  814. dmin[]=1457.1131615798;
  815. dmax[]=1541.2273662551;
  816. dmin[]=1515.0383087563;
  817. dmax[]=4818.8587534294;
  818. dmin[]=4727.5581728205;
  819. dmax[]=1534.3182513146;
  820. dmin[]=1504.4821566358;
  821. dmax[]=1547.0355366941;
  822. dmin[]=1513.6037701475;
  823. dmax[]=1598.6005670344;
  824. dmin[]=1572.8882411218;
  825. dmax[]=3676.3401277435;
  826. dmin[]=3645.2802211934;
  827. dmax[]=4280.0875878772;
  828. dmin[]=4206.0998085277;
  829. dmax[]=2980.3495846670;
  830. dmin[]=2947.9075526787;
  831. dmax[]=3011.6955947074;
  832. dmin[]=2963.5740359701;
  833. dmax[]=3946.9544753086;
  834. dmin[]=3924.8462839125;
  835. dmax[]=6517.5464749085;
  836. dmin[]=6415.2605667010;
  837. dmax[]=147.6400986892;
  838. dmin[]=89.2601963782;
  839. dmax[]=257.1858496228;
  840. dmin[]=190.8584128753;
  841. dmax[]=252.3629270024;
  842. dmin[]=184.5396681940;
  843. dmax[]=301.3552002362;
  844. dmin[]=243.1498175774;
  845. dmax[]=236.5152820645;
  846. dmin[]=178.6969825246;
  847. dmax[]=291.6070982891;
  848. dmin[]=233.6940568559;
  849. dmax[]=359.9126717059;
  850. dmin[]=293.1627371971;
  851. dmax[]=295.5584764613;
  852. dmin[]=256.2226520824;
  853. dmax[]=3669.4914694787;
  854. dmin[]=3563.7280711782;
  855. dmax[]=389.4286372599;
  856. dmin[]=384.4475701589;
  857. dmax[]=2251.1179483882;
  858. dmin[]=2205.1296891670;
  859. dmax[]=3017.6644173430;
  860. dmin[]=2939.3314326343;
  861. dmax[]=2338.7110990449;
  862. dmin[]=2248.7861823443;
  863. dmax[]=5695.9455101642;
  864. dmin[]=5460.6340913637;
  865. dmax[]=5676.9275882106;
  866. dmin[]=5488.4613840306;
  867. dmax[]=5710.2617574493;
  868. dmin[]=5568.1564190863;
  869. dmax[]=2381.4294815005;
  870. dmin[]=2362.1686818098;
  871. dmax[]=2478.9458257125;
  872. dmin[]=2459.3707668896;
  873. dmax[]=6466.6833875521;
  874. dmin[]=6315.4665702690;
  875. dmax[]=5845.0903730376;
  876. dmin[]=5798.7655015591;
  877. dmax[]=1719.2177652511;
  878. dmin[]=1633.1462167543;
  879. dmax[]=1780.9554374333;
  880. dmin[]=1736.6722546503;
  881. dmax[]=1832.7807022558;
  882. dmin[]=1753.0964315653;
  883. dmax[]=1792.3268354195;
  884. dmin[]=1760.9091959114;
  885. dmax[]=7407.7422458467;
  886. dmin[]=7247.6857519814;
  887. dmax[]=1901.1101156455;
  888. dmin[]=1886.5162664165;
  889. dmax[]=4649.3631794410;
  890. dmin[]=4593.8993716421;
  891. dmax[]=4677.8817443987;
  892. dmin[]=4554.0368929565;
  893. dmax[]=8830.5971626848;
  894. dmin[]=8673.4565353033;
  895. dmax[]=4766.5699255068;
  896. dmin[]=4742.1305679393;
  897. dmax[]=4162.2289320892;
  898. dmin[]=4053.2304431489;
  899. dmax[]=6341.0042771681;
  900. dmin[]=6247.8671386793;
  901. dmax[]=4929.2392308718;
  902. dmin[]=4873.7036055331;
  903. dmax[]=7872.9425678250;
  904. dmin[]=7743.7882523942;
  905. dmax[]=8231.5991750495;
  906. dmin[]=8090.2792856621;
  907. dmax[]=1422.0523524425;
  908. dmin[]=1382.6826488912;
  909. dmax[]=1505.6993181775;
  910. dmin[]=1478.7650649514;
  911. dmax[]=1656.4089029873;
  912. dmin[]=1629.7378162628;
  913. dmax[]=6436.6032438367;
  914. dmin[]=6273.9314998190;
  915. dmax[]=6505.9448302469;
  916. dmin[]=6318.7160755792;
  917. dmax[]=9454.9624938081;
  918. dmin[]=9256.2829011711;
  919. dmax[]=5516.1204811100;
  920. dmin[]=5475.1114921506;
  921. dmax[]=10468.7030749886;
  922. dmin[]=10225.8148469650;
  923. dmax[]=5634.7702939243;
  924. dmin[]=5604.7104945416;
  925. dmax[]=10562.7302240512;
  926. dmin[]=10407.4795965268;
  927. dmax[]=4804.0017730243;
  928. dmin[]=4780.5669133103;
  929. dmax[]=4844.1055098308;
  930. dmin[]=4823.9204437205;
  931. dmax[]=13897.8296983755;
  932. dmin[]=13634.6802623668;
  933. dmax[]=9971.1276339354;
  934. dmin[]=9863.9338142369;
  935. dmax[]=9292.2046039095;
  936. dmin[]=9226.4675711591;
  937. dmax[]=4854.2439021776;
  938. dmin[]=4849.4561197321;
  939. dmax[]=11383.0826188843;
  940. dmin[]=11294.3846379172;
  941. dmax[]=12726.1525396281;
  942. dmin[]=12628.5057282934;
  943. dmax[]=15397.3263460219;
  944. dmin[]=15273.4797548964;
  945. dmax[]=10532.2069901692;
  946. dmin[]=10532.2069901692;
  947. dmax[]=16021.8635211858;
  948. dmin[]=16021.8635211858;
  949. dmax[]=194.3717704920;
  950. dmin[]=40.2302529599;
  951. dmax[]=369.4698726772;
  952. dmin[]=46.9140025657;
  953. dmax[]=371.9810700779;
  954. dmin[]=75.2925873136;
  955. dmax[]=478.4578042441;
  956. dmin[]=149.8941924159;
  957. dmax[]=352.6189403808;
  958. dmin[]=70.6543663353;
  959. dmax[]=422.6110858077;
  960. dmin[]=70.4962120641;
  961. dmax[]=531.3186563675;
  962. dmin[]=158.2084714932;
  963. dmax[]=506.2029678212;
  964. dmin[]=202.3029483128;
  965. dmax[]=659.3351861378;
  966. dmin[]=223.9294352598;
  967. dmax[]=794.1044832073;
  968. dmin[]=348.1515887494;
  969. dmax[]=465.5540028858;
  970. dmin[]=139.7917832939;
  971. dmax[]=580.8660937315;
  972. dmin[]=233.0884790862;
  973. dmax[]=556.1440568029;
  974. dmin[]=294.8483882295;
  975. dmax[]=625.4961465398;
  976. dmin[]=263.8479657123;
  977. dmax[]=642.8518058096;
  978. dmin[]=323.0687892682;
  979. dmax[]=1020.9240737168;
  980. dmin[]=499.9841627822;
  981. dmax[]=756.9396216159;
  982. dmin[]=361.4385244736;
  983. dmax[]=804.2393221625;
  984. dmin[]=434.8427317778;
  985. dmax[]=1142.0635114746;
  986. dmin[]=616.5431549698;
  987. dmax[]=1358.7606006373;
  988. dmin[]=910.0163939588;
  989. dmax[]=590.9853454599;
  990. dmin[]=285.2257360214;
  991. dmax[]=684.3316508059;
  992. dmin[]=300.4752586636;
  993. dmax[]=829.7499158538;
  994. dmin[]=453.6492028866;
  995. dmax[]=648.5562656385;
  996. dmin[]=398.7582965392;
  997. dmax[]=904.3724744227;
  998. dmin[]=419.5800738582;
  999. dmax[]=952.4708516709;
  1000. dmin[]=607.1082081328;
  1001. dmax[]=986.5068496807;
  1002. dmin[]=580.5497240639;
  1003. dmax[]=995.7816625943;
  1004. dmin[]=617.0753063002;
  1005. dmax[]=1102.6942109916;
  1006. dmin[]=696.1225803332;
  1007. dmax[]=1293.8514094888;
  1008. dmin[]=975.4886042405;
  1009. dmax[]=11757.5867930527;
  1010. dmin[]=11452.5924467921;
  1011. dmax[]=11719.1314496223;
  1012. dmin[]=11389.9265688639;
  1013. dmax[]=11750.2670435782;
  1014. dmin[]=11461.0877875260;
  1015. dmax[]=12089.0516284675;
  1016. dmin[]=11781.1398258755;
  1017. dmax[]=26955.1883466221;
  1018. dmin[]=26097.8127519094;
  1019. dmax[]=4374.7485768572;
  1020. dmin[]=4104.8980572544;
  1021. dmax[]=4510.6907207759;
  1022. dmin[]=4132.7463151961;
  1023. dmax[]=4829.0138829351;
  1024. dmin[]=4404.0240757411;
  1025. dmax[]=4796.2065658658;
  1026. dmin[]=4409.9280139032;
  1027. dmax[]=5022.3018086674;
  1028. dmin[]=4406.8152915111;
  1029. dmax[]=5279.0935696016;
  1030. dmin[]=4884.9633739035;
  1031. dmax[]=4973.2614562892;
  1032. dmin[]=4627.3166211801;
  1033. dmax[]=5163.2132753360;
  1034. dmin[]=4727.1126293153;
  1035. dmax[]=5107.2382390446;
  1036. dmin[]=4820.0923381694;
  1037. dmax[]=24390.2699051450;
  1038. dmin[]=23491.1350201475;
  1039. dmax[]=5153.8803542000;
  1040. dmin[]=4766.2568523599;
  1041. dmax[]=5148.2828131880;
  1042. dmin[]=4740.6162474703;
  1043. dmax[]=5557.1326270740;
  1044. dmin[]=5175.4939360478;
  1045. dmax[]=5940.8348074798;
  1046. dmin[]=5593.7875913966;
  1047. dmax[]=21270.1288526663;
  1048. dmin[]=20884.8449715755;
  1049. dmax[]=13638.4393950760;
  1050. dmin[]=13416.0666316984;
  1051. dmax[]=14081.7711540416;
  1052. dmin[]=13539.5563146576;
  1053. dmax[]=14670.2829646776;
  1054. dmin[]=13898.5369767058;
  1055. dmax[]=14776.8501347927;
  1056. dmin[]=14279.5084507411;
  1057. dmax[]=14695.6440549507;
  1058. dmin[]=14392.6185539830;
  1059. dmax[]=29053.3553291017;
  1060. dmin[]=28658.3706208244;
  1061. dmax[]=967.0998273812;
  1062. dmin[]=483.5995414031;
  1063. dmax[]=1228.8454561439;
  1064. dmin[]=585.4682000727;
  1065. dmax[]=1309.6274611446;
  1066. dmin[]=684.7334850038;
  1067. dmax[]=1656.8527406132;
  1068. dmin[]=1072.5442687164;
  1069. dmax[]=2303.0647797539;
  1070. dmin[]=1699.1091981077;
  1071. dmax[]=2020.5296184101;
  1072. dmin[]=1376.3947773600;
  1073. dmax[]=1512.9856212174;
  1074. dmin[]=993.7750508813;
  1075. dmax[]=2155.2857464643;
  1076. dmin[]=1550.9985436486;
  1077. dmax[]=2371.7101970530;
  1078. dmin[]=1837.9024420639;
  1079. dmax[]=2599.4486582383;
  1080. dmin[]=2212.2162909062;
  1081. dmax[]=22162.2436144135;
  1082. dmin[]=21477.5099521866;
  1083. dmax[]=22132.4416141679;
  1084. dmin[]=21782.1836064513;
  1085. dmax[]=23003.4963691436;
  1086. dmin[]=22027.9335804827;
  1087. dmax[]=56340.2719353048;
  1088. dmin[]=54169.2986552350;
  1089. dmax[]=23532.3702786827;
  1090. dmin[]=23150.4181033376;
  1091. dmax[]=15810.8355875854;
  1092. dmin[]=15570.5119933829;
  1093. dmax[]=17081.2347066896;
  1094. dmin[]=16176.2199818953;
  1095. dmax[]=16940.1203366325;
  1096. dmin[]=16476.9611983621;
  1097. dmax[]=17635.1016233605;
  1098. dmin[]=17329.7402154884;
  1099. dmax[]=45681.4281547422;
  1100. dmin[]=44720.2818710083;
  1101. dmax[]=40643.2785623486;
  1102. dmin[]=39621.6045258978;
  1103. dmax[]=12759.7338033746;
  1104. dmin[]=12484.4791560161;
  1105. dmax[]=13894.7327532007;
  1106. dmin[]=13515.9984748498;
  1107. dmax[]=14749.8415659029;
  1108. dmin[]=14437.8743815606;
  1109. dmax[]=64063.9017266116;
  1110. dmin[]=61720.1351494760;
  1111. dmax[]=54323.2026290533;
  1112. dmin[]=53440.9330337675;
  1113. dmax[]=46896.1137450465;
  1114. dmin[]=46324.5863871398;
  1115. dmax[]=47400.8053412209;
  1116. dmin[]=47139.1641099976;
  1117. dmax[]=1298.6855006618;
  1118. dmin[]=187.6007245825;
  1119. dmax[]=1491.9750650953;
  1120. dmin[]=223.3673863063;
  1121. dmax[]=1724.2105056222;
  1122. dmin[]=282.2148528515;
  1123. dmax[]=2303.3924378041;
  1124. dmin[]=266.6182416817;
  1125. dmax[]=3192.9876480144;
  1126. dmin[]=344.0873728810;
  1127. dmax[]=2929.9214445610;
  1128. dmin[]=563.1113497477;
  1129. dmax[]=2548.9055060166;
  1130. dmin[]=434.3364947068;
  1131. dmax[]=3010.2953998723;
  1132. dmin[]=493.3574781930;
  1133. dmax[]=3453.9773810862;
  1134. dmin[]=569.0726610260;
  1135. dmax[]=4616.8603062479;
  1136. dmin[]=1626.5996866744;
  1137. dmax[]=3783.3213056337;
  1138. dmin[]=981.6508458749;
  1139. dmax[]=3717.6187803464;
  1140. dmin[]=1227.1752886146;
  1141. dmax[]=4609.1693726184;
  1142. dmin[]=1842.8698545044;
  1143. dmax[]=5467.0160719606;
  1144. dmin[]=2090.4682308705;
  1145. dmax[]=6793.0866956484;
  1146. dmin[]=2978.8418392789;
  1147. dmax[]=3919.1657507496;
  1148. dmin[]=2052.8523507892;
  1149. dmax[]=5521.3893153312;
  1150. dmin[]=2495.3251907094;
  1151. dmax[]=5737.9434120656;
  1152. dmin[]=2689.5499365372;
  1153. dmax[]=5924.6765386321;
  1154. dmin[]=3245.2574742723;
  1155. dmax[]=8213.9321715499;
  1156. dmin[]=4681.7779475531;
  1157. dmax[]=116672.3144780462;
  1158. dmin[]=112668.1486653372;
  1159. dmax[]=42111.7830760788;
  1160. dmin[]=40791.3714772151;
  1161. dmax[]=43518.5455490796;
  1162. dmin[]=40631.9199806627;
  1163. dmax[]=44863.7229470352;
  1164. dmin[]=40935.3891463184;
  1165. dmax[]=47349.6225536736;
  1166. dmin[]=42691.2014944134;
  1167. dmax[]=48770.4805365565;
  1168. dmin[]=45293.4864288149;
  1169. dmax[]=49207.0078391301;
  1170. dmin[]=46021.4548904976;
  1171. dmax[]=134381.6973255373;
  1172. dmin[]=132102.4887378579;
  1173. dmax[]=7069.0239066953;
  1174. dmin[]=3725.9974728167;
  1175. dmax[]=9321.9322390900;
  1176. dmin[]=4529.0369525895;
  1177. dmax[]=10266.3310179930;
  1178. dmin[]=4712.2985268626;
  1179. dmax[]=15134.4219958536;
  1180. dmin[]=9642.9386421078;
  1181. dmax[]=13294.5607577937;
  1182. dmin[]=8653.0856382868;
  1183. dmax[]=220712.4745010794;
  1184. dmin[]=213214.5674642164;
  1185. dmax[]=157137.1784207973;
  1186. dmin[]=153973.0654041489;
  1187. dmax[]=125797.0641292672;
  1188. dmin[]=123396.3259225896;
  1189. dmax[]=10581.3514556698;
  1190. dmin[]=1552.8631652257;
  1191. dmax[]=12609.0430973263;
  1192. dmin[]=1669.5084794961;
  1193. dmax[]=12888.2430275852;
  1194. dmin[]=1944.1378473185;
  1195. dmax[]=22216.2948490446;
  1196. dmin[]=2282.4925785500;
  1197. dmax[]=24032.8637932755;
  1198. dmin[]=3907.5529613813;
  1199. dmax[]=36149.6295980344;
  1200. dmin[]=8824.4798164677;
  1201. dmax[]=37637.2496743769;
  1202. dmin[]=18418.9426315879;
  1203. dmax[]=422754.5825671131;
  1204. dmin[]=404766.7612967730;
  1205. dmax[]=69551.1413956859;
  1206. dmin[]=34930.4199082499;
  1207. dmax[]=104798.3905297908;
  1208. dmin[]=14762.1738782474;
  1209. }
  1210.  
  1211. double p[];
  1212.  
  1213. int link(vector<int> s,int ex1,int ex2=-,int ex3=-,int ex4=-){
  1214. int ans=;
  1215. int n=s.size();
  1216. for(int i=;i<n;i++){
  1217. if(i==ex1||i==ex2||i==ex3||i==ex4)
  1218. continue;
  1219. else{
  1220. ans*=;
  1221. ans+=s[i];
  1222. }
  1223. }
  1224. return ans;
  1225. }
  1226.  
  1227. vector<int> findnextstate(int state,int sum){
  1228. vector<int>ans;
  1229.  
  1230. //cout<<"state="<<state<<" has next states:\n ";
  1231. vector<int> s;
  1232. while(state){
  1233. s.push_back(state%);
  1234. state/=;
  1235. }
  1236. reverse(s.begin(),s.end());
  1237. int n=s.size();
  1238. for(int i=;i<n;i++){
  1239. if(s[i]==sum){
  1240. ans.push_back(link(s,i));
  1241. break;
  1242. }
  1243. }
  1244.  
  1245. for(int i=;i<n;i++){
  1246. for(int j=i+;j<n;j++){
  1247. if(s[i]+s[j]==sum){
  1248. ans.push_back(link(s,i,j));
  1249. break;
  1250. }
  1251. }
  1252. }
  1253.  
  1254. for(int i=;i<n;i++){
  1255. for(int j=i+;j<n;j++){
  1256. for(int k=j+;k<n;k++){
  1257. if(s[i]+s[j]+s[k]==sum){
  1258. ans.push_back(link(s,i,j,k));
  1259. break;
  1260. }
  1261. }
  1262. }
  1263. }
  1264.  
  1265. for(int i=;i<n;i++){
  1266. for(int j=i+;j<n;j++){
  1267. for(int k=j+;k<n;k++){
  1268. for(int l=k+;l<n;l++){
  1269. if(s[i]+s[j]+s[k]+s[l]==sum){
  1270. ans.push_back(link(s,i,j,k,l));
  1271. break;
  1272. }
  1273. }
  1274. }
  1275. }
  1276. }
  1277.  
  1278. /*for(auto i:ans){
  1279. cout<<i<<",";
  1280. }
  1281. cout<<endl;*/
  1282. return ans;
  1283. }
  1284.  
  1285. int antilink(int state,int nstate){
  1286. vector<int> s;
  1287. while(state){
  1288. s.push_back(state%);
  1289. state/=;
  1290. }
  1291. reverse(s.begin(),s.end());
  1292.  
  1293. vector<int> ns;
  1294. while(nstate){
  1295. ns.push_back(nstate%);
  1296. nstate/=;
  1297. }
  1298. reverse(ns.begin(),ns.end());
  1299.  
  1300. int ans=;
  1301. int i=,j=;
  1302.  
  1303. for(int i=;i<s.size();i++){
  1304. int notlink=;
  1305. for(int j=;j<ns.size();j++){
  1306. if(ns[j]==s[i]){
  1307. notlink=;
  1308. break;
  1309. }
  1310.  
  1311. }
  1312. if(notlink==){
  1313. ans*=;
  1314. ans+=s[i];
  1315. }
  1316. }
  1317. return ans;
  1318. }
  1319.  
  1320. void calc(int state,int sum){
  1321. double maxans=;
  1322. double minans=;
  1323.  
  1324. int maxansnum=-;
  1325. int minansnum=-;
  1326.  
  1327. vector<int> ns;
  1328. /*for(int sum=2;sum<=12;sum++)*/{
  1329. ns=findnextstate(state,sum);
  1330. if(ns.size()==){
  1331. minans+=state;
  1332. maxans+=state;
  1333. }
  1334. else{
  1335. double nmax=-1.0;
  1336. double nmin=1e30;
  1337. for(auto nsi:ns){
  1338. if(dmax[nsi]>nmax){
  1339. nmax=dmax[nsi];
  1340. maxansnum=antilink(state,nsi);
  1341. }
  1342.  
  1343. if(dmin[nsi]<nmin){
  1344. nmin=dmin[nsi];
  1345. minansnum=antilink(state,nsi);
  1346. }
  1347. //nmax=max(nmax,dmax[nsi]);
  1348. //nmin=min(nmin,dmin[nsi]);
  1349. }
  1350.  
  1351. maxans=nmax;
  1352. minans=nmin;
  1353. }
  1354. }
  1355.  
  1356. //dmax[state]=maxans;
  1357. //dmin[state]=minans;
  1358.  
  1359. //cerr<<"state="<<state<<" dmax="<<maxans<<" dmin="<<minans<<endl;
  1360. //printf("dmax[%d]=%.10f;\ndmin[%d]=%.10f;\n",state,maxans,state,minans);
  1361. //cout<<"dmax["<<state<<"]="<<maxans<<";\n";
  1362. //cout<<"dmin["<<state<<"]="<<minans<<";\n";
  1363.  
  1364. printf("%d %.5f\n",minansnum,minans);
  1365. printf("%d %.5f\n",maxansnum,maxans);
  1366. }
  1367.  
  1368. int main(){
  1369. init();
  1370. for(int sum=;sum<=;sum++){
  1371. p[sum]=1.0*(sum-)/;
  1372. }
  1373. for(int sum=;sum<=;sum++){
  1374. p[sum]=1.0*(-sum)/;
  1375. }
  1376.  
  1377. int state,a,b;
  1378. while(cin>>state>>a>>b){
  1379. calc(state,a+b);
  1380. }
  1381. }

dalao的代码:复杂度真的过关吗?

#include <bits/stdc++.h>
using namespace std;
#define db(x) cerr << #x << "=" << x << endl
#define db2(x, y) cerr << #x << "=" << x << "," << #y << "=" << y << endl
#define db3(x, y, z) cerr << #x << "=" << x << "," << #y << "=" << y << "," << #z << "=" << z << endl
#define dbv(v) cerr << #v << "="; for (auto _x : v) cerr << _x << ", "; cerr << endl
#define dba(a, n) cerr << #a << "="; for (int _i = 0; _i < (n); ++_i) cerr << a[_i] << ", "; cerr << endl
typedef long long ll;
typedef long double ld;
int sumb[ << ], score[ << ];
ld mindp[ << ], maxdp[ << ];
char BS[];
int main() {
for (int i = ; i < ( << ); ++i)
for (int j = ; j < ; ++j)
if (i & ( << j)) {
sumb[i] += j + ;
score[i] = score[i] * + (j + );
}
int r1, r2;
scanf("%s%d%d", BS, &r1, &r2);
int B = ;
for (int i = ; i < strlen(BS); ++i)
B |= << (BS[i] - '');
int tot = r1 + r2;
for (int b = ; b < ( << ); ++b) {
for (int i = ; i <= ; ++i)
for (int j = ; j <= ; ++j) {
int sum = i + j;
// try all subsets that sum to sum
ld mn = 1e15;
ld mx = -1e15;
bool has = false;
for (int bb = b; bb; bb = (bb - ) & b) {
if (sumb[bb] == sum) {
mn = min(mn, mindp[b ^ bb]);
mx = max(mx, maxdp[b ^ bb]);
has = true;
}
}
if (!has) {
mindp[b] += score[b] / .L;
maxdp[b] += score[b] / .L;
} else {
mindp[b] += mn / ;
maxdp[b] += mx / ;
}
}
}
bool has = false;
ld mn = 1e15;
ld mx = -1e15;
int mnset, mxset;
for (int bb = B; bb; bb = (bb - ) & B) {
if (sumb[bb] == tot) {
if (mn > mindp[B ^ bb]) {
mnset = bb;
mn = mindp[B ^ bb];
}
if (mx < maxdp[B ^ bb]) {
mxset = bb;
mx = maxdp[B ^ bb];
}
has = true;
}
}
auto calc = [&](int bb) {
int ret = ;
for (int i = ; i < ; ++i)
if (bb & ( << i)) ret = ret * + (i + );
return ret;
};
printf("%d %.5Lf\n", has ? calc(mnset) : -, has ? mn : calc(B));
printf("%d %.5Lf\n", has ? calc(mxset) : -, has ? mx : calc(B));
}

K的更多相关文章

  1. django模型操作

    Django-Model操作数据库(增删改查.连表结构) 一.数据库操作 1.创建model表        

  2. 基于改进人工蜂群算法的K均值聚类算法(附MATLAB版源代码)

    其实一直以来也没有准备在园子里发这样的文章,相对来说,算法改进放在园子里还是会稍稍显得格格不入.但是最近邮箱收到的几封邮件让我觉得有必要通过我的博客把过去做过的东西分享出去更给更多需要的人.从论文刊登 ...

  3. 【开源】专业K线绘制[K线主副图、趋势图、成交量、滚动、放大缩小、MACD、KDJ等)

    这是一个iOS项目雅黑深邃的K线的绘制. 实现功能包括K线主副图.趋势图.成交量.滚动.放大缩小.MACD.KDJ,长按显示辅助线等功能 预览图 最后的最后,这是项目的开源地址:https://git ...

  4. 找到第k个最小元----快速选择

    此算法借用快速排序算法. 这个快速选择算法主要利用递归调用,数组存储方式.包含3个文件,头文件QuickSelect.h,库函数QuickSelect.c,测试文件TestQuickSelect. 其 ...

  5. BZOJ 3110: [Zjoi2013]K大数查询 [树套树]

    3110: [Zjoi2013]K大数查询 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 6050  Solved: 2007[Submit][Sta ...

  6. 二次剩余、三次剩余、k次剩余

    今天研究了一下这块内容...首先是板子 #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  7. [LeetCode] Longest Substring with At Least K Repeating Characters 至少有K个重复字符的最长子字符串

    Find the length of the longest substring T of a given string (consists of lowercase letters only) su ...

  8. K近邻法(KNN)原理小结

    K近邻法(k-nearst neighbors,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用.比如,我们判断一个人的人品,只需要观察他来往最密切的几个人的人品好坏就可以得出 ...

  9. YYStock开源----iOS股票K线绘制第二版

    新的股票绘制粗来啦,欢迎围观star的说(*^__^*) 嘻嘻-- 捏合功能也准备完善了 Github:https://github.com/yate1996/YYStock 长按分时图+五档图 分时 ...

  10. k近邻算法(knn)的c语言实现

    最近在看knn算法,顺便敲敲代码. knn属于数据挖掘的分类算法.基本思想是在距离空间里,如果一个样本的最接近的k个邻居里,绝大多数属于某个类别,则该样本也属于这个类别.俗话叫,"随大流&q ...

随机推荐

  1. 单词number 和 numeral 的区别

    原文: http://blog.sina.com.cn/s/blog_72cd06360100vn7t.html be of 的用法,相当于表征特征或属性的形容词. 简单地说,“of + 名词”等于“ ...

  2. IOS UIPickView+sqlite 选择中国全部城市案例

    1.案例简单介绍 通过读取文件.将中国全部城市写入sqlite数据库中,现通过UIPickView实现中国全部城市的选择,效果图例如以下所看到的 2.城市对象模型 中国全部城市数据请看http://b ...

  3. QVector的内存分配策略

    我们都知道 STL std::vector 作为动态数组在所分配的内存被填满时.假设继续加入数据,std::vector 会另外申请一个大小当前容量两倍的区域(假设 n > size 则申请 n ...

  4. VisualSVN Server 改动用户password

    VisualSVN Server是很方便好用的SVNserver端软件.但有个问题,你在server端创建了usernamepassword后,用户无法自己改动password.据说VisualSVN ...

  5. java开始到熟悉100-102

    本次内容:arraylist() 1. package list; import java.util.ArrayList; import java.util.Date; import java.uti ...

  6. 我所见过的最简短、最灵活的javascript日期转字符串工具函数

    我们知道javascript的Date对象并没有提供日期格式化函数.将日期对象转换成"2015-7-02 20:35:11"等这样的格式又是项目中非经常常使用的需求.近期在我们项目 ...

  7. JAVA WEB学习笔记(二):Tomcat服务器的安装及配置

    一.Tomcat的下载及安装. 前往Tomcat官网下载安装包或者免安装压缩包.链接http://tomcat.apache.org/ 这里,我选择的是Tomcat8.0,而不是最新的Tomcat9. ...

  8. 用NHibernate处理带属性的多对多关系

    1.引言 老谭在面试开发者的时候,为了考察他们的数据库开发能力,经常祭出我的法宝,就是大学数据库教程中讲到的一个模式:学生选课.这个模式是这种: 在这个模式中,学生(Student)和课程(Cours ...

  9. android-測试so动态库(九)

    1.依照androidproject向导一步步新建一个 2.将jar包放在libs文件夹下 3.在libs文件夹下新建armeabi文件夹.以及将so动态库放在该文件夹下 4.引用动态库,代码測试 p ...

  10. jws webservice code

    1.服务器端建立 1.1.创建接口 [java] view plaincopy @WebService  public interface IWebService {      int add(int ...