Wednesday, April 20, 2022

[umhklgjh] nice bounding rectangle

given a number N, find integers A and B such that 1 <= B/A <= 2, A*B >= N, minimizing A*B - N .  (A and B do not need to be prime numbers.)

brute force with pari/gp:

f(n)=my(start=ceil(sqrt(n/2))); if(start==0, start=1); my(end=ceil(sqrt(n))); my(over=n); my(best=-1); for(a=start, end, my(b=ceil(n/a)); if(b<a, if(a!=end, print("something went wrong "a)); next); my(d=a*b-n); if(d<=over, over=d; best=[a,b]; my(pg=(a-start+1.0)/(end-start+1)); print(a" "b" ",-d," ratio=",1.0*b/a," progress=",pg))); best

runs in reasonable time for inputs less than about 10^17.

goal is to encode N bytes of data into an image with an aesthetically acceptable aspect ratio, adding as little padding as possible.

here are the "worst" inputs, producing record values of the gap between A*B and N:

3 = 2 * 2 - 1
10 = 3 * 4 - 2
21 = 4 * 6 - 3
73 = 7 * 11 - 4
145 = 10 * 15 - 5
426 = 18 * 24 - 6
533 = 20 * 27 - 7
652 = 22 * 30 - 8
1335 = 32 * 42 - 9
2669 = 47 * 57 - 10
2929 = 49 * 60 - 11
6513 = 75 * 87 - 12
6917 = 77 * 90 - 13
8401 = 85 * 99 - 14
8859 = 87 * 102 - 15
10012 = 92 * 109 - 16
25351 = 151 * 168 - 17
27281 = 156 * 175 - 19
87054 = 221 * 394 - 20
113051 = 296 * 382 - 21
122851 = 278 * 442 - 25
178569 = 396 * 451 - 27
185506 = 399 * 465 - 29
599206 = 729 * 822 - 32
1308163 = 911 * 1436 - 33
1888133 = 1071 * 1763 - 40
4803657 = 1985 * 2420 - 43
12901579 = 3563 * 3621 - 44
16733731 = 3446 * 4856 - 45
25670818 = 3964 * 6476 - 46
79143844 = 7939 * 9969 - 47
85744291 = 8030 * 10678 - 49

searched up to 100*10^6.

distribution of gaps, partial sums up to 100e6.  most (small) numbers require little or no padding.

? gettime; a=List(vector(50)); for(i=1,100*10^6, d=gapsize(i); a[d+1]+=1; if(i%10^6==0, print(i" "gettime" "a)))

1000000 127287 List([252756, 202853, 148411, 112661, 78731, 60093, 40880, 31315, 21210, 15573, 10534, 8110, 5112, 3905, 2590, 1782, 1120, 837, 481, 373, 218, 149, 103, 77, 43, 32, 20, 13, 6, 6, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
2000000 228775 List([497750, 400414, 294619, 224792, 158598, 121703, 83601, 64396, 43978, 32522, 22237, 17125, 11097, 8526, 5798, 4067, 2650, 2012, 1233, 962, 595, 425, 293, 215, 130, 98, 61, 40, 21, 13, 7, 7, 5, 3, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0])
3000000 295721 List([740221, 596284, 440019, 336529, 238719, 183736, 126833, 97949, 67451, 50004, 34375, 26561, 17377, 13458, 9189, 6549, 4320, 3320, 2083, 1610, 1008, 729, 518, 391, 242, 181, 116, 81, 49, 33, 16, 13, 10, 7, 4, 4, 4, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0])
4000000 347669 List([981119, 790992, 584983, 448370, 318979, 246080, 170378, 131807, 91141, 67784, 46805, 36304, 23906, 18526, 12725, 9117, 6090, 4695, 2973, 2306, 1465, 1043, 749, 574, 352, 257, 173, 112, 70, 50, 22, 15, 11, 8, 4, 4, 4, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0])
5000000 393422 List([1221029, 985115, 729855, 559974, 399217, 308507, 214259, 166163, 115307, 85829, 59505, 46184, 30507, 23637, 16217, 11591, 7793, 6033, 3860, 2970, 1904, 1375, 977, 751, 452, 326, 228, 154, 97, 69, 33, 23, 17, 12, 6, 5, 5, 4, 3, 2, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0])
6000000 436089 List([1459820, 1178407, 874134, 671501, 479730, 371101, 258203, 200471, 139573, 104053, 72406, 56266, 37279, 28916, 19920, 14294, 9678, 7487, 4817, 3713, 2413, 1748, 1229, 943, 581, 422, 297, 204, 129, 94, 49, 35, 23, 18, 10, 9, 7, 6, 5, 4, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0])
7000000 472820 List([1698079, 1371479, 1018182, 782822, 560012, 433669, 302420, 234792, 163773, 122440, 85421, 66513, 44236, 34346, 23742, 17086, 11615, 8984, 5831, 4479, 2925, 2126, 1504, 1165, 715, 520, 366, 255, 162, 122, 66, 48, 31, 23, 12, 11, 8, 6, 5, 4, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0])
8000000 506549 List([1935786, 1564010, 1162011, 894063, 640579, 496465, 346785, 269620, 188120, 140836, 98464, 76768, 51203, 39756, 27568, 19885, 13521, 10473, 6875, 5282, 3475, 2519, 1777, 1377, 847, 613, 425, 298, 193, 146, 77, 57, 37, 28, 15, 12, 9, 7, 6, 5, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0])
9000000 539380 List([2172957, 1756144, 1305798, 1005380, 721160, 559507, 391331, 304356, 212640, 159232, 111543, 86947, 58148, 45202, 31437, 22745, 15519, 12042, 7938, 6120, 4033, 2937, 2066, 1603, 985, 715, 492, 342, 217, 163, 87, 66, 44, 34, 18, 14, 10, 8, 7, 6, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0])
10000000 569956 List([2409731, 1948040, 1449347, 1116764, 801663, 622480, 435901, 339158, 237177, 177835, 124765, 97314, 65171, 50728, 35366, 25655, 17521, 13633, 8990, 6937, 4590, 3330, 2352, 1831, 1127, 821, 567, 399, 250, 190, 107, 81, 56, 42, 21, 16, 11, 9, 8, 7, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0])
11000000 599050 List([2646019, 2139807, 1592906, 1227961, 882225, 685416, 480587, 374130, 261983, 196536, 138079, 107663, 72183, 56253, 39277, 28592, 19543, 15202, 10051, 7767, 5130, 3734, 2628, 2048, 1278, 937, 645, 456, 288, 222, 131, 100, 70, 54, 32, 22, 12, 9, 8, 7, 4, 3, 1, 1, 0, 0, 0, 0, 0, 0])
12000000 627893 List([2881966, 2331003, 1736253, 1339074, 962971, 748508, 525188, 409260, 286862, 215359, 151443, 118216, 79315, 61781, 43184, 31491, 21588, 16786, 11159, 8630, 5717, 4163, 2938, 2284, 1435, 1058, 732, 521, 329, 256, 151, 114, 81, 62, 36, 26, 16, 13, 11, 9, 5, 4, 1, 1, 0, 0, 0, 0, 0, 0])
13000000 654051 List([3117521, 2522087, 1879443, 1450325, 1043824, 811798, 570137, 444448, 311851, 234233, 164898, 128675, 86376, 67355, 47164, 34377, 23573, 18336, 12202, 9447, 6263, 4566, 3215, 2503, 1574, 1169, 808, 580, 370, 287, 168, 126, 90, 66, 39, 29, 18, 15, 13, 11, 7, 6, 3, 3, 1, 0, 0, 0, 0, 0])
14000000 681088 List([3352822, 2713040, 2022674, 1561562, 1124491, 874727, 614953, 479465, 336794, 253143, 178441, 139267, 93614, 73062, 51184, 37379, 25658, 19963, 13329, 10335, 6865, 5016, 3536, 2752, 1736, 1285, 888, 638, 409, 316, 186, 142, 98, 72, 43, 31, 20, 16, 14, 12, 8, 7, 3, 3, 1, 0, 0, 0, 0, 0])
15000000 705276 List([3587686, 2903459, 2165743, 1672486, 1205250, 937906, 659962, 514798, 361907, 272196, 192093, 150069, 100916, 78738, 55214, 40333, 27729, 21597, 14461, 11215, 7461, 5463, 3846, 3005, 1898, 1404, 970, 692, 445, 348, 203, 153, 105, 77, 47, 34, 23, 17, 15, 13, 9, 7, 3, 3, 1, 0, 0, 0, 0, 0])
16000000 729634 List([3822435, 3093864, 2308534, 1783218, 1285842, 1001039, 705051, 550262, 387147, 291318, 205814, 160792, 108273, 84505, 59344, 43378, 29837, 23261, 15580, 12102, 8049, 5897, 4158, 3243, 2062, 1522, 1056, 756, 479, 375, 223, 170, 116, 87, 55, 42, 29, 22, 20, 17, 10, 8, 4, 3, 1, 0, 0, 0, 0, 0])
17000000 751288 List([4056955, 3284241, 2451442, 1894247, 1366564, 1064451, 750085, 585502, 412214, 310320, 219412, 171422, 115635, 90281, 63431, 46383, 31914, 24894, 16712, 12992, 8685, 6361, 4498, 3512, 2242, 1668, 1165, 836, 544, 431, 264, 201, 137, 103, 64, 49, 35, 27, 24, 20, 13, 10, 6, 5, 2, 1, 0, 0, 0, 0])
18000000 775594 List([4291284, 3474561, 2594403, 2005310, 1447295, 1127800, 795182, 620841, 437341, 329452, 233197, 182309, 123013, 96011, 67479, 49383, 33987, 26522, 17834, 13890, 9282, 6787, 4787, 3724, 2381, 1774, 1236, 882, 582, 456, 285, 219, 146, 108, 65, 49, 35, 27, 24, 20, 13, 10, 6, 5, 2, 1, 0, 0, 0, 0])
19000000 796790 List([4525312, 3664581, 2737042, 2116272, 1528128, 1191060, 840264, 656243, 462552, 348538, 246909, 193154, 130508, 101943, 71696, 52508, 36123, 28234, 18996, 14791, 9896, 7233, 5115, 3973, 2541, 1899, 1325, 948, 624, 490, 305, 236, 158, 118, 73, 57, 40, 31, 26, 21, 13, 10, 6, 5, 2, 1, 0, 0, 0, 0])
20000000 816266 List([4759230, 3854466, 2879938, 2227465, 1608885, 1254365, 885480, 691806, 487785, 367646, 260525, 203917, 137871, 107714, 75745, 55551, 38275, 29921, 20152, 15730, 10552, 7724, 5461, 4236, 2712, 2031, 1423, 1012, 665, 526, 324, 253, 171, 128, 81, 64, 45, 35, 29, 23, 14, 10, 6, 5, 2, 1, 0, 0, 0, 0])
21000000 836519 List([4993099, 4044559, 3022872, 2338430, 1689618, 1317674, 930757, 727322, 513189, 386918, 274299, 214738, 145287, 113537, 79825, 58507, 40320, 31529, 21267, 16613, 11150, 8159, 5777, 4496, 2869, 2144, 1495, 1069, 705, 554, 338, 263, 175, 131, 81, 64, 45, 35, 29, 23, 14, 10, 6, 5, 2, 1, 0, 0, 0, 0])
22000000 856245 List([5226586, 4234214, 3165565, 2449297, 1770513, 1380991, 975972, 762972, 538511, 406270, 288206, 225673, 152760, 119397, 83978, 61557, 42454, 33203, 22422, 17527, 11777, 8613, 6095, 4755, 3038, 2265, 1587, 1138, 754, 598, 371, 284, 187, 140, 87, 68, 47, 37, 30, 23, 14, 10, 6, 5, 2, 1, 0, 0, 0, 0])
23000000 879057 List([5459874, 4423606, 3307961, 2560051, 1851298, 1444491, 1021309, 798773, 563995, 425682, 302120, 236583, 160257, 125289, 88193, 64718, 44666, 34939, 23606, 18434, 12403, 9079, 6435, 5017, 3200, 2382, 1667, 1197, 791, 628, 386, 295, 194, 145, 89, 70, 48, 38, 30, 23, 14, 10, 6, 5, 2, 1, 0, 0, 0, 0])
24000000 899474 List([5693112, 4613256, 3450504, 2670856, 1932206, 1507952, 1066721, 834300, 589331, 444906, 315947, 247414, 167723, 131162, 92403, 67862, 46894, 36710, 24837, 19387, 13060, 9562, 6783, 5294, 3378, 2502, 1750, 1257, 837, 663, 409, 313, 205, 151, 94, 73, 50, 40, 32, 24, 15, 11, 6, 5, 2, 1, 0, 0, 0, 0])
25000000 915338 List([5926197, 4802669, 3593148, 2781699, 2013244, 1571399, 1112006, 869877, 614811, 464251, 329768, 258307, 175245, 137084, 96700, 71016, 49031, 38373, 25986, 20273, 13680, 10024, 7115, 5557, 3553, 2644, 1858, 1335, 892, 707, 443, 341, 224, 164, 101, 77, 53, 43, 35, 27, 16, 12, 7, 5, 2, 1, 0, 0, 0, 0])
26000000 943272 List([6159039, 4991997, 3735561, 2892516, 2094218, 1634996, 1157449, 905592, 640350, 483613, 343621, 269168, 182719, 143015, 100938, 74175, 51215, 40080, 27167, 21211, 14343, 10506, 7461, 5844, 3727, 2769, 1945, 1406, 943, 743, 472, 365, 242, 177, 112, 87, 58, 46, 36, 28, 17, 13, 8, 6, 3, 2, 1, 0, 0, 0])
27000000 953908 List([6391796, 5181092, 3877812, 3003291, 2175131, 1698544, 1202887, 941257, 665852, 503051, 357553, 280122, 190294, 149009, 105258, 77352, 53454, 41837, 28370, 22180, 14997, 10992, 7808, 6124, 3919, 2918, 2053, 1490, 997, 785, 504, 387, 257, 186, 119, 93, 61, 48, 38, 29, 18, 14, 9, 6, 3, 2, 1, 0, 0, 0])
28000000 969406 List([6624196, 5370020, 4020218, 3114088, 2255976, 1762009, 1248342, 977103, 691502, 522681, 371655, 291177, 197874, 154959, 109497, 80542, 55690, 43606, 29582, 23126, 15648, 11473, 8135, 6380, 4071, 3031, 2138, 1554, 1038, 822, 525, 405, 271, 198, 127, 100, 65, 52, 40, 30, 19, 14, 9, 6, 3, 2, 1, 0, 0, 0])
29000000 985355 List([6856597, 5558838, 4162405, 3224790, 2336864, 1825573, 1293993, 1013164, 717245, 542291, 385713, 302220, 205408, 160866, 113751, 83737, 57936, 45368, 30774, 24042, 16281, 11932, 8449, 6632, 4238, 3159, 2232, 1625, 1086, 856, 547, 423, 280, 204, 131, 103, 67, 53, 41, 31, 20, 14, 9, 6, 3, 2, 1, 0, 0, 0])
30000000 1006754 List([7088963, 5747592, 4304626, 3335627, 2417888, 1889152, 1339410, 1048880, 742770, 561896, 399734, 313339, 213110, 166941, 118068, 86910, 60181, 47162, 31998, 24998, 16916, 12402, 8796, 6893, 4412, 3290, 2321, 1687, 1131, 888, 570, 445, 291, 210, 135, 106, 69, 55, 43, 33, 21, 15, 10, 7, 4, 3, 2, 0, 0, 0])
31000000 1022570 List([7321140, 5936588, 4446902, 3446512, 2498985, 1952846, 1384842, 1084567, 768304, 581405, 413726, 324387, 220685, 172870, 122281, 90053, 62420, 48960, 33233, 25954, 17610, 12923, 9195, 7184, 4610, 3431, 2429, 1764, 1176, 921, 593, 464, 306, 221, 140, 109, 71, 55, 43, 33, 21, 15, 10, 7, 4, 3, 2, 0, 0, 0])
32000000 1037493 List([7553234, 6125449, 4589051, 3557430, 2579945, 2016435, 1430255, 1120255, 793952, 600989, 427823, 335532, 228387, 178946, 126608, 93238, 64637, 50716, 34457, 26917, 18277, 13407, 9539, 7454, 4782, 3574, 2534, 1844, 1221, 954, 616, 479, 314, 226, 144, 112, 73, 56, 43, 33, 21, 15, 10, 7, 4, 3, 2, 0, 0, 0])
33000000 1058065 List([7785126, 6313752, 4731084, 3667923, 2660792, 2080042, 1475750, 1156178, 819641, 620651, 441981, 346731, 236088, 185097, 131082, 96565, 66972, 52546, 35707, 27930, 18980, 13932, 9904, 7753, 4990, 3738, 2635, 1921, 1273, 994, 642, 499, 326, 235, 151, 117, 76, 57, 44, 33, 21, 15, 10, 7, 4, 3, 2, 0, 0, 0])
34000000 1073622 List([8016930, 6502142, 4873220, 3778952, 2741967, 2143606, 1521182, 1191852, 845063, 640090, 456073, 357872, 243914, 191304, 135498, 99866, 69267, 54330, 36949, 28943, 19660, 14458, 10268, 8039, 5190, 3888, 2742, 2004, 1331, 1037, 670, 522, 345, 249, 160, 125, 82, 61, 48, 37, 23, 15, 10, 7, 4, 3, 2, 0, 0, 0])
35000000 1087910 List([8248680, 6690777, 5015421, 3889745, 2822872, 2207138, 1566625, 1227720, 870748, 659685, 470234, 369071, 251689, 197415, 139878, 103086, 71546, 56146, 38188, 29931, 20344, 14940, 10599, 8305, 5358, 4015, 2837, 2077, 1379, 1075, 697, 542, 360, 262, 168, 132, 87, 65, 51, 40, 26, 18, 11, 8, 4, 3, 2, 0, 0, 0])
36000000 1101456 List([8480303, 6879284, 5157663, 4000653, 2903962, 2270810, 1612262, 1263710, 896621, 679427, 484437, 380163, 259279, 203423, 144156, 106273, 73800, 57904, 39383, 30837, 20973, 15402, 10932, 8562, 5517, 4133, 2916, 2134, 1423, 1108, 718, 557, 371, 271, 173, 134, 89, 67, 53, 41, 27, 19, 12, 9, 4, 3, 2, 0, 0, 0])
37000000 1120196 List([8711737, 7067418, 5299543, 4111212, 2984868, 2334426, 1657938, 1299814, 922562, 699210, 498781, 391446, 267063, 209564, 148520, 109539, 76058, 59678, 40637, 31838, 21658, 15916, 11295, 8852, 5695, 4263, 3013, 2200, 1466, 1146, 744, 577, 386, 283, 184, 142, 91, 67, 53, 41, 27, 19, 12, 9, 4, 3, 2, 0, 0, 0])
38000000 1133906 List([8943064, 7255432, 5441359, 4221856, 3065981, 2398114, 1703554, 1335733, 948367, 719013, 513010, 402659, 274863, 215679, 152915, 112866, 78408, 61540, 41903, 32842, 22360, 16442, 11656, 9146, 5909, 4429, 3129, 2285, 1527, 1190, 778, 603, 407, 296, 197, 150, 94, 69, 55, 42, 28, 20, 12, 9, 4, 3, 2, 0, 0, 0])
39000000 1148362 List([9174461, 7443653, 5583458, 4332348, 3146854, 2461789, 1749292, 1371724, 974159, 738714, 527264, 413865, 282635, 221823, 157309, 116169, 80750, 63383, 43185, 33834, 23028, 16948, 12008, 9423, 6093, 4577, 3240, 2370, 1575, 1225, 800, 622, 421, 305, 203, 155, 94, 69, 55, 42, 28, 20, 12, 9, 4, 3, 2, 0, 0, 0])
40000000 1164346 List([9405761, 7631608, 5725175, 4443021, 3227840, 2525538, 1795123, 1407904, 1000040, 758494, 541528, 425098, 290429, 227932, 161713, 119443, 83049, 65188, 44409, 34797, 23722, 17481, 12377, 9710, 6297, 4742, 3338, 2448, 1624, 1263, 822, 636, 431, 311, 208, 158, 95, 70, 56, 43, 28, 20, 12, 9, 4, 3, 2, 0, 0, 0])
41000000 1177418 List([9636915, 7819911, 5867102, 4553575, 3309160, 2589281, 1840841, 1443845, 1025825, 778143, 555665, 436255, 298132, 234002, 166129, 122707, 85400, 67061, 45722, 35833, 24430, 17997, 12733, 9995, 6481, 4892, 3440, 2526, 1680, 1306, 850, 660, 447, 325, 214, 162, 98, 73, 59, 46, 30, 22, 12, 9, 4, 3, 2, 0, 0, 0])
42000000 1192268 List([9867998, 8007746, 6009078, 4664313, 3390168, 2652982, 1886432, 1479887, 1051745, 797927, 569865, 447471, 305946, 240153, 170547, 126031, 87813, 69008, 47017, 36867, 25133, 18502, 13091, 10277, 6661, 5032, 3537, 2600, 1729, 1344, 873, 680, 461, 334, 220, 167, 101, 74, 60, 47, 31, 22, 12, 9, 4, 3, 2, 0, 0, 0])
43000000 1206925 List([10098984, 8195640, 6151042, 4774916, 3471177, 2716930, 1932338, 1516020, 1077777, 817679, 584093, 458675, 313724, 246262, 174873, 129275, 90115, 70836, 48291, 37857, 25814, 19012, 13438, 10547, 6837, 5176, 3635, 2663, 1773, 1382, 898, 701, 477, 347, 229, 176, 108, 79, 64, 51, 33, 23, 13, 10, 5, 3, 2, 0, 0, 0])
44000000 1222102 List([10329944, 8383735, 6292693, 4885254, 3551919, 2780530, 1978136, 1552252, 1103796, 837648, 598525, 470053, 321532, 252425, 179265, 132551, 92401, 72651, 49584, 38887, 26525, 19540, 13819, 10862, 7058, 5348, 3744, 2746, 1831, 1425, 926, 720, 492, 359, 239, 183, 112, 83, 66, 52, 33, 23, 13, 10, 5, 3, 2, 0, 0, 0])
45000000 1233956 List([10560850, 8571610, 6434440, 4995918, 3632796, 2844086, 2023936, 1588379, 1129833, 857509, 612903, 481437, 329438, 258650, 183697, 135829, 94698, 74482, 50837, 39882, 27198, 20056, 14182, 11150, 7245, 5493, 3841, 2820, 1883, 1471, 957, 747, 511, 375, 251, 190, 118, 87, 69, 55, 35, 23, 13, 10, 5, 3, 2, 0, 0, 0])
46000000 1248896 List([10791705, 8759444, 6575908, 5106387, 3713846, 2907858, 2069847, 1624588, 1155878, 877311, 627159, 492691, 337272, 264806, 188093, 139149, 97069, 76391, 52188, 40936, 27914, 20602, 14565, 11456, 7456, 5651, 3949, 2900, 1936, 1513, 983, 767, 524, 382, 256, 191, 119, 88, 70, 56, 36, 24, 14, 11, 6, 3, 2, 0, 0, 0])
47000000 1261733 List([11022406, 8947238, 6717783, 5217036, 3794973, 2971653, 2115590, 1660717, 1181756, 897096, 641561, 504022, 345067, 270970, 192560, 142510, 99436, 78240, 53457, 41894, 28570, 21113, 14919, 11740, 7647, 5812, 4065, 2986, 1991, 1560, 1011, 788, 539, 392, 263, 198, 123, 91, 72, 57, 37, 25, 14, 11, 6, 3, 2, 0, 0, 0])
48000000 1277078 List([11253093, 9135022, 6859578, 5327533, 3876013, 3035416, 2161466, 1696789, 1207765, 916985, 655872, 515269, 352914, 277164, 196981, 145825, 101766, 80083, 54736, 42921, 29292, 21643, 15300, 12034, 7855, 5964, 4178, 3081, 2060, 1614, 1043, 814, 563, 412, 278, 209, 129, 97, 77, 61, 40, 28, 15, 11, 6, 3, 2, 0, 0, 0])
49000000 1288800 List([11483671, 9322402, 7001262, 5438139, 3957204, 3099191, 2207367, 1733004, 1233823, 936882, 670179, 526552, 360692, 283338, 201409, 149154, 104156, 81964, 56042, 43944, 30007, 22178, 15686, 12358, 8085, 6138, 4295, 3176, 2123, 1667, 1076, 838, 578, 425, 287, 217, 134, 101, 80, 63, 42, 30, 16, 12, 7, 4, 2, 0, 0, 0])
50000000 1301134 List([11714203, 9509877, 7142840, 5548624, 4038497, 3163175, 2253281, 1769149, 1259839, 956728, 684460, 537866, 368505, 289542, 205889, 152534, 106538, 83857, 57358, 44952, 30698, 22694, 16071, 12653, 8280, 6289, 4406, 3259, 2180, 1714, 1108, 861, 591, 436, 296, 225, 142, 108, 84, 67, 46, 34, 18, 13, 7, 4, 2, 0, 0, 0])
51000000 1317198 List([11944572, 9697370, 7284387, 5659191, 4119562, 3227014, 2299139, 1805388, 1285872, 976691, 698927, 549289, 376348, 295711, 210386, 155916, 108922, 85715, 58672, 45988, 31412, 23218, 16433, 12941, 8482, 6444, 4524, 3344, 2228, 1751, 1138, 884, 609, 450, 307, 233, 147, 112, 86, 69, 47, 35, 19, 14, 7, 4, 2, 0, 0, 0])
52000000 1328932 List([12175067, 9885082, 7426038, 5769777, 4200385, 3290735, 2344869, 1841522, 1311997, 996666, 713287, 560634, 384226, 301947, 214866, 159286, 111331, 87646, 59995, 47038, 32143, 23769, 16803, 13231, 8669, 6589, 4630, 3421, 2288, 1796, 1170, 906, 624, 460, 315, 238, 151, 116, 88, 71, 47, 35, 19, 14, 7, 4, 2, 0, 0, 0])
53000000 1340978 List([12405399, 10072404, 7567628, 5880296, 4281351, 3354423, 2390749, 1877853, 1338141, 1016681, 727724, 571988, 392126, 308175, 219350, 162676, 113740, 89540, 61324, 48093, 32879, 24332, 17206, 13538, 8868, 6747, 4734, 3495, 2343, 1838, 1194, 927, 635, 469, 323, 243, 155, 120, 90, 73, 49, 35, 19, 14, 7, 4, 2, 0, 0, 0])
54000000 1354869 List([12635638, 10260049, 7709250, 5990843, 4362405, 3418315, 2436684, 1914123, 1364219, 1036688, 742136, 583379, 400008, 314368, 223728, 165948, 116074, 91420, 62600, 49103, 33595, 24861, 17593, 13838, 9075, 6911, 4842, 3578, 2401, 1878, 1223, 947, 645, 478, 329, 249, 158, 123, 93, 75, 49, 35, 19, 14, 7, 4, 2, 0, 0, 0])
55000000 1366245 List([12865893, 10447523, 7850967, 6101490, 4443588, 3482203, 2482484, 1950213, 1390258, 1056622, 756541, 594735, 407859, 320528, 228203, 169260, 118425, 93298, 63953, 50160, 34321, 25403, 17978, 14146, 9280, 7067, 4965, 3676, 2468, 1934, 1254, 970, 661, 489, 337, 255, 162, 127, 95, 76, 50, 36, 20, 14, 7, 4, 2, 0, 0, 0])
56000000 1379470 List([13095999, 10634700, 7992595, 6212027, 4524929, 3546176, 2528406, 1986277, 1416392, 1076662, 771040, 606127, 415737, 326755, 232642, 172613, 120843, 95200, 65283, 51203, 35041, 25935, 18343, 14426, 9469, 7212, 5069, 3747, 2512, 1967, 1276, 989, 679, 504, 347, 263, 169, 132, 100, 79, 51, 37, 20, 14, 7, 4, 2, 0, 0, 0])
57000000 1394723 List([13326104, 10822095, 8134278, 6322543, 4606066, 3609943, 2574175, 2022220, 1442289, 1096553, 785538, 617526, 423728, 333111, 237299, 176057, 123247, 97114, 66640, 52273, 35755, 26485, 18735, 14741, 9692, 7385, 5185, 3833, 2575, 2018, 1313, 1017, 695, 519, 356, 268, 173, 135, 102, 81, 53, 38, 20, 14, 7, 4, 2, 0, 0, 0])
58000000 1402636 List([13556196, 11009498, 8275793, 6433021, 4687141, 3673772, 2620156, 2058646, 1468427, 1116495, 799966, 628908, 431645, 339412, 241840, 179414, 125593, 98965, 67905, 53278, 36465, 27016, 19116, 15056, 9898, 7545, 5305, 3919, 2637, 2067, 1344, 1040, 712, 530, 363, 274, 176, 138, 104, 83, 55, 39, 20, 14, 7, 4, 2, 0, 0, 0])
59000000 1418267 List([13786115, 11196756, 8417245, 6543513, 4768060, 3737692, 2666151, 2094975, 1494665, 1136586, 814394, 640313, 439574, 345617, 246355, 182825, 128016, 100887, 69248, 54361, 37213, 27577, 19527, 15370, 10102, 7693, 5416, 3997, 2683, 2103, 1366, 1057, 720, 535, 368, 278, 178, 139, 105, 84, 55, 39, 20, 14, 7, 4, 2, 0, 0, 0])
60000000 1427691 List([14015967, 11383899, 8558763, 6654117, 4849373, 3801574, 2712194, 2131273, 1520836, 1156587, 828884, 651720, 447463, 351840, 250863, 186195, 130384, 102741, 70554, 55387, 37908, 28113, 19933, 15678, 10308, 7848, 5525, 4085, 2745, 2153, 1400, 1086, 736, 550, 378, 285, 182, 141, 107, 84, 55, 39, 20, 14, 7, 4, 2, 0, 0, 0])
61000000 1438556 List([14245742, 11570842, 8700266, 6764490, 4930367, 3865525, 2758360, 2167728, 1547147, 1176755, 843359, 663224, 455352, 358068, 255404, 189592, 132782, 104638, 71845, 56397, 38633, 28664, 20323, 15989, 10519, 8017, 5643, 4163, 2793, 2193, 1428, 1104, 749, 560, 386, 291, 184, 143, 109, 85, 55, 39, 20, 14, 7, 4, 2, 0, 0, 0])
62000000 1462000 List([14475428, 11757934, 8841901, 6875166, 5011537, 3929249, 2804229, 2204062, 1573259, 1196772, 857712, 674622, 463238, 364331, 259954, 193020, 135242, 106600, 73236, 57498, 39415, 29245, 20725, 16311, 10724, 8175, 5761, 4248, 2847, 2239, 1463, 1132, 767, 573, 398, 299, 188, 147, 113, 89, 57, 41, 22, 16, 8, 5, 2, 0, 0, 0])
63000000 1462474 List([14705156, 11945066, 8983462, 6985643, 5092843, 3993313, 2850244, 2240420, 1599364, 1216770, 872142, 686051, 471158, 370581, 264469, 196427, 137616, 108474, 74526, 58531, 40133, 29762, 21106, 16619, 10936, 8337, 5881, 4334, 2908, 2288, 1496, 1160, 784, 586, 408, 304, 191, 150, 115, 91, 59, 42, 23, 16, 8, 5, 2, 0, 0, 0])
64000000 1475070 List([14934748, 12132004, 9125041, 7096242, 5173982, 4057316, 2896328, 2276825, 1625530, 1236754, 886617, 697476, 479147, 376853, 268978, 199825, 140051, 110400, 75842, 59587, 40850, 30302, 21481, 16914, 11151, 8504, 5992, 4416, 2960, 2329, 1527, 1187, 802, 599, 415, 309, 195, 153, 117, 93, 60, 43, 24, 16, 8, 5, 2, 0, 0, 0])
65000000 1486316 List([15164296, 12319268, 9266381, 7206561, 5255077, 4121193, 2942477, 2313335, 1651699, 1256720, 901064, 708905, 487046, 383087, 273532, 203289, 142500, 112333, 77193, 60671, 41595, 30874, 21880, 17242, 11376, 8683, 6114, 4507, 3028, 2376, 1563, 1216, 828, 617, 424, 317, 200, 158, 119, 94, 61, 44, 25, 17, 8, 5, 2, 0, 0, 0])
66000000 1498161 List([15393755, 12505847, 9407458, 7316936, 5336149, 4185108, 2988417, 2349702, 1678017, 1276873, 915645, 720535, 495188, 389597, 278206, 206772, 144993, 114313, 78581, 61718, 42328, 31413, 22255, 17556, 11596, 8845, 6239, 4604, 3093, 2430, 1599, 1243, 846, 632, 434, 325, 206, 162, 123, 97, 63, 44, 25, 17, 8, 5, 2, 0, 0, 0])
67000000 1509550 List([15623167, 12692894, 9548647, 7427249, 5417076, 4248834, 3034360, 2386070, 1704328, 1297058, 930271, 732055, 503227, 395929, 282831, 210184, 147417, 116256, 79956, 62814, 43109, 32012, 22713, 17909, 11837, 9034, 6380, 4713, 3167, 2488, 1644, 1283, 868, 650, 446, 333, 212, 168, 129, 101, 67, 48, 28, 20, 10, 6, 2, 0, 0, 0])
68000000 1520347 List([15852473, 12879690, 9689877, 7537695, 5498373, 4312881, 3080366, 2422414, 1730664, 1317327, 944797, 743528, 511325, 402318, 287374, 213624, 149839, 118156, 81265, 63828, 43834, 32555, 23110, 18223, 12059, 9203, 6503, 4805, 3224, 2537, 1677, 1307, 886, 665, 454, 339, 215, 170, 130, 102, 68, 49, 29, 21, 11, 7, 3, 0, 0, 0])
69000000 1533054 List([16081733, 13066658, 9831014, 7647918, 5579607, 4376967, 3126600, 2458960, 1756899, 1337513, 959413, 755025, 519290, 408591, 291883, 216996, 152241, 120056, 82620, 64884, 44591, 33124, 23513, 18557, 12269, 9373, 6640, 4903, 3294, 2589, 1714, 1340, 911, 681, 465, 347, 218, 173, 132, 104, 69, 50, 30, 22, 12, 8, 3, 0, 0, 0])
70000000 1541143 List([16310866, 13253486, 9972489, 7758576, 5661047, 4441007, 3172652, 2495314, 1783039, 1357544, 974018, 766546, 527193, 414814, 296462, 220428, 154662, 121962, 83950, 65931, 45349, 33686, 23905, 18874, 12489, 9546, 6757, 4992, 3359, 2639, 1741, 1361, 929, 696, 477, 356, 226, 180, 136, 108, 73, 52, 32, 24, 14, 10, 3, 0, 0, 0])
71000000 1556103 List([16540031, 13440188, 10113803, 7869031, 5742388, 4505049, 3218724, 2531742, 1809291, 1377709, 988640, 778095, 535171, 421159, 301069, 223890, 157091, 123883, 85263, 66978, 46085, 34240, 24290, 19183, 12693, 9710, 6879, 5078, 3418, 2687, 1771, 1388, 951, 708, 487, 365, 230, 184, 139, 109, 74, 53, 32, 24, 14, 10, 3, 0, 0, 0])
72000000 1566645 List([16769202, 13626898, 10255223, 7979620, 5823790, 4569161, 3264821, 2568068, 1835476, 1397772, 1003189, 789630, 543106, 427371, 305632, 227338, 159537, 125786, 86621, 68052, 46816, 34796, 24695, 19502, 12927, 9899, 7007, 5179, 3489, 2739, 1806, 1417, 967, 720, 493, 369, 233, 186, 141, 111, 76, 55, 33, 24, 14, 10, 3, 0, 0, 0])
73000000 1578948 List([16998317, 13813572, 10396413, 8089917, 5904958, 4633386, 3310982, 2604527, 1861873, 1418017, 1017750, 801135, 551139, 433737, 310219, 230735, 161967, 127676, 87951, 69117, 47556, 35354, 25091, 19822, 13138, 10068, 7138, 5278, 3562, 2797, 1845, 1451, 991, 735, 503, 375, 239, 191, 144, 114, 78, 56, 34, 25, 14, 10, 3, 0, 0, 0])
74000000 1590945 List([17227364, 14000226, 10537681, 8200345, 5986218, 4697402, 3357205, 2640915, 1888168, 1438066, 1032307, 812647, 559224, 440202, 314873, 234190, 164430, 129627, 89304, 70204, 48301, 35907, 25481, 20119, 13348, 10230, 7267, 5374, 3619, 2842, 1876, 1476, 1007, 745, 511, 379, 242, 194, 146, 115, 79, 57, 35, 25, 14, 10, 3, 0, 0, 0])
75000000 1602037 List([17456321, 14186703, 10678698, 8310586, 6067260, 4761345, 3403339, 2677369, 1914545, 1458361, 1047008, 824331, 567413, 446675, 319575, 237715, 166918, 131615, 90679, 71294, 49061, 36481, 25885, 20438, 13567, 10405, 7393, 5469, 3678, 2881, 1902, 1495, 1019, 753, 515, 382, 244, 196, 147, 116, 79, 57, 35, 25, 14, 10, 3, 0, 0, 0])
76000000 1616534 List([17685267, 14373258, 10819901, 8420999, 6148422, 4825126, 3449279, 2713757, 1940957, 1478577, 1061601, 836003, 575546, 453114, 324184, 241160, 169414, 133634, 92122, 72412, 49849, 37052, 26301, 20771, 13794, 10580, 7519, 5569, 3745, 2932, 1939, 1525, 1045, 774, 533, 394, 251, 200, 150, 117, 80, 58, 36, 26, 14, 10, 3, 0, 0, 0])
77000000 1631311 List([17914264, 14560011, 10961326, 8531525, 6229734, 4889396, 3495577, 2750171, 1967173, 1498744, 1076128, 847543, 583551, 459398, 328696, 244543, 171816, 135524, 93447, 73442, 50582, 37603, 26681, 21071, 13992, 10729, 7619, 5641, 3802, 2980, 1975, 1554, 1065, 788, 542, 402, 255, 204, 153, 119, 82, 60, 38, 27, 14, 10, 3, 0, 0, 0])
78000000 1645054 List([18143125, 14746623, 11102391, 8641833, 6310965, 4953367, 3541722, 2786544, 1993354, 1518794, 1090752, 859145, 591653, 465850, 333435, 248121, 174339, 137531, 94836, 74538, 51354, 38191, 27122, 21423, 14239, 10923, 7758, 5747, 3870, 3036, 2012, 1586, 1085, 800, 550, 408, 258, 207, 156, 121, 83, 61, 38, 27, 14, 10, 3, 0, 0, 0])
79000000 1649942 List([18372065, 14933012, 11243578, 8752080, 6392113, 5017256, 3587861, 2823137, 2019792, 1539139, 1105563, 870798, 599729, 472251, 338089, 251579, 176783, 139419, 96151, 75602, 52091, 38759, 27525, 21751, 14461, 11100, 7884, 5847, 3936, 3094, 2055, 1616, 1107, 812, 558, 415, 263, 210, 158, 123, 84, 62, 38, 27, 14, 10, 3, 0, 0, 0])
80000000 1661228 List([18600892, 15119115, 11384354, 8862188, 6473323, 5081383, 3634013, 2859788, 2046314, 1559555, 1120383, 882467, 607910, 478688, 342707, 255084, 179306, 141424, 97560, 76669, 52828, 39321, 27929, 22069, 14674, 11269, 8016, 5938, 3995, 3140, 2086, 1640, 1126, 829, 569, 423, 270, 216, 161, 126, 86, 64, 40, 29, 16, 12, 4, 1, 0, 0])
81000000 1668295 List([18829716, 15305741, 11525502, 8972588, 6554421, 5145265, 3680153, 2896172, 2072730, 1579838, 1135098, 894107, 616077, 485203, 347416, 258584, 181782, 143375, 98903, 77710, 53545, 39864, 28306, 22371, 14883, 11424, 8135, 6030, 4059, 3189, 2122, 1668, 1146, 844, 577, 426, 272, 218, 162, 126, 86, 64, 40, 29, 16, 12, 4, 1, 0, 0])
82000000 1679845 List([19058480, 15492305, 11666870, 9083071, 6635617, 5209363, 3726217, 2932640, 2099107, 1600048, 1149771, 905630, 624117, 491607, 352018, 262051, 184321, 145343, 100280, 78788, 54314, 40399, 28688, 22680, 15092, 11586, 8252, 6118, 4114, 3229, 2148, 1686, 1156, 852, 582, 429, 273, 218, 162, 126, 86, 64, 40, 29, 16, 12, 4, 1, 0, 0])
83000000 1687727 List([19287175, 15678976, 11808334, 9193583, 6716916, 5273323, 3772249, 2968952, 2125261, 1620180, 1164423, 917221, 632199, 498047, 356700, 265553, 186853, 147352, 101662, 79874, 55085, 40941, 29077, 22979, 15294, 11743, 8367, 6204, 4173, 3278, 2184, 1712, 1176, 868, 595, 438, 279, 223, 165, 128, 87, 65, 41, 30, 17, 13, 4, 1, 0, 0])
84000000 1699367 List([19515840, 15865403, 11949459, 9304096, 6798196, 5337369, 3818518, 3005664, 2151676, 1640359, 1179024, 928693, 640284, 504486, 361329, 269027, 189299, 149302, 103023, 80938, 55837, 41526, 29493, 23289, 15496, 11896, 8478, 6294, 4234, 3322, 2217, 1739, 1195, 880, 604, 446, 285, 229, 169, 128, 87, 65, 41, 30, 17, 13, 4, 1, 0, 0])
85000000 1712597 List([19744459, 16051811, 12090731, 9414637, 6879428, 5401397, 3864619, 3042171, 2177952, 1660533, 1193699, 940341, 648403, 510928, 366023, 272539, 191823, 151307, 104378, 82038, 56613, 42083, 29875, 23588, 15701, 12067, 8599, 6384, 4288, 3360, 2244, 1759, 1203, 886, 607, 449, 286, 230, 170, 129, 88, 66, 42, 31, 17, 13, 4, 1, 0, 0])
86000000 1719469 List([19973083, 16238180, 12232013, 9525033, 6960628, 5465487, 3910763, 3078645, 2204329, 1680793, 1208386, 951908, 656418, 517317, 370678, 276060, 194306, 153304, 105802, 83142, 57385, 42660, 30300, 23911, 15912, 12223, 8717, 6471, 4354, 3417, 2281, 1789, 1224, 900, 618, 458, 290, 234, 174, 132, 91, 68, 43, 32, 18, 14, 5, 2, 1, 1])
87000000 1730691 List([20201675, 16424322, 12373081, 9635325, 7041794, 5529424, 3957031, 3115164, 2230801, 1701135, 1223111, 963569, 664510, 523746, 375371, 279564, 196832, 155324, 107233, 84287, 58188, 43248, 30731, 24249, 16127, 12385, 8830, 6550, 4410, 3465, 2312, 1817, 1246, 917, 631, 468, 298, 239, 176, 134, 93, 70, 44, 32, 18, 14, 5, 2, 1, 1])
88000000 1736288 List([20430258, 16610593, 12513992, 9745563, 7122864, 5593415, 4003162, 3151683, 2257292, 1721470, 1237886, 975276, 672714, 530281, 380134, 283083, 199368, 157327, 108659, 85420, 58976, 43838, 31142, 24560, 16327, 12532, 8934, 6633, 4470, 3512, 2347, 1845, 1262, 928, 639, 475, 303, 243, 178, 135, 94, 70, 44, 32, 18, 14, 5, 2, 1, 1])
89000000 1750204 List([20658797, 16796841, 12654926, 9855748, 7204006, 5657412, 4049378, 3188293, 2283756, 1741684, 1252629, 986983, 680894, 536749, 384838, 286636, 201892, 159328, 110061, 86522, 59753, 44438, 31588, 24918, 16552, 12707, 9057, 6727, 4538, 3566, 2381, 1872, 1285, 943, 651, 486, 310, 249, 182, 138, 96, 71, 45, 33, 18, 14, 5, 2, 1, 1])
90000000 1755900 List([20887218, 16983166, 12795976, 9966173, 7285201, 5721411, 4095633, 3224873, 2310162, 1761950, 1267247, 998617, 689049, 543234, 389549, 290202, 204404, 161324, 111470, 87594, 60526, 45006, 31995, 25238, 16769, 12876, 9178, 6821, 4605, 3618, 2420, 1903, 1306, 959, 661, 493, 313, 252, 184, 138, 96, 71, 45, 33, 18, 14, 5, 2, 1, 1])
91000000 1762993 List([21115619, 17169303, 12936918, 10076359, 7366274, 5785500, 4141907, 3261498, 2336693, 1782313, 1282005, 1010339, 697186, 549688, 394223, 293729, 206933, 163339, 112872, 88724, 61323, 45601, 32413, 25559, 16991, 13054, 9315, 6924, 4677, 3670, 2459, 1938, 1325, 971, 670, 500, 318, 256, 186, 140, 97, 72, 45, 33, 18, 14, 5, 2, 1, 1])
92000000 1770925 List([21344021, 17355295, 13077819, 10186656, 7447538, 5849592, 4188009, 3298092, 2363215, 1802612, 1296746, 1022064, 705442, 556283, 398949, 297251, 209444, 165309, 114245, 89814, 62118, 46201, 32849, 25898, 17227, 13239, 9441, 7016, 4736, 3712, 2485, 1958, 1340, 984, 680, 508, 326, 264, 191, 142, 98, 72, 45, 33, 18, 14, 5, 2, 1, 1])
93000000 1785723 List([21572337, 17541429, 13218883, 10297174, 7528803, 5913700, 4234173, 3334626, 2389587, 1822910, 1311463, 1033673, 713588, 562743, 403664, 300795, 211982, 167303, 115662, 90924, 62871, 46774, 33266, 26232, 17448, 13414, 9573, 7118, 4810, 3776, 2528, 1990, 1360, 997, 689, 513, 329, 267, 193, 143, 99, 72, 45, 33, 18, 14, 5, 2, 1, 1])
94000000 1797020 List([21800627, 17727624, 13360291, 10407677, 7610022, 5977723, 4280402, 3371249, 2416098, 1843328, 1326230, 1045278, 721553, 569120, 408311, 304317, 214455, 169275, 117033, 91999, 63597, 47317, 33662, 26534, 17653, 13575, 9698, 7222, 4876, 3823, 2561, 2014, 1377, 1010, 699, 520, 336, 274, 199, 147, 101, 73, 46, 33, 18, 14, 5, 2, 1, 1])
95000000 1804844 List([22028867, 17913656, 13501268, 10517804, 7690969, 6041784, 4326789, 3407844, 2442569, 1863688, 1341050, 1057031, 729781, 575640, 413020, 307884, 217024, 171311, 118457, 93128, 64381, 47922, 34081, 26871, 17880, 13747, 9825, 7317, 4944, 3875, 2600, 2044, 1401, 1028, 712, 532, 344, 281, 205, 149, 102, 74, 47, 33, 18, 14, 5, 2, 1, 1])
96000000 1813526 List([22257152, 18099717, 13642264, 10628411, 7772208, 6105982, 4372984, 3444376, 2468946, 1883989, 1355824, 1068764, 737966, 582136, 417703, 311363, 219489, 173278, 119856, 94235, 65150, 48499, 34489, 27193, 18103, 13921, 9952, 7400, 5002, 3925, 2637, 2074, 1421, 1045, 723, 541, 348, 283, 205, 149, 102, 74, 47, 33, 18, 14, 5, 2, 1, 1])
97000000 1822010 List([22485335, 18285882, 13782922, 10738275, 7853288, 6169967, 4419446, 3481199, 2495680, 1904443, 1370662, 1080494, 746174, 588614, 422400, 314908, 222019, 175291, 121269, 95360, 65935, 49087, 34923, 27539, 18338, 14098, 10075, 7490, 5066, 3974, 2666, 2097, 1437, 1057, 733, 551, 356, 290, 207, 151, 104, 75, 48, 34, 18, 14, 5, 2, 1, 1])
98000000 1833257 List([22713556, 18471696, 13923763, 10848551, 7934523, 6234053, 4465734, 3517868, 2522195, 1924761, 1385451, 1092187, 754412, 595143, 427148, 318481, 224595, 177373, 122698, 96478, 66732, 49662, 35318, 27852, 18564, 14274, 10204, 7580, 5132, 4026, 2706, 2128, 1456, 1070, 742, 560, 361, 295, 211, 154, 105, 76, 49, 35, 19, 14, 5, 2, 1, 1])
99000000 1843222 List([22941762, 18657814, 14064805, 10958863, 8015715, 6298291, 4512162, 3554576, 2548668, 1945036, 1400171, 1103880, 762633, 601584, 431798, 322017, 227106, 179348, 124085, 97571, 67451, 50201, 35714, 28166, 18776, 14436, 10321, 7671, 5193, 4076, 2739, 2154, 1475, 1083, 752, 565, 363, 297, 213, 156, 107, 78, 50, 36, 19, 14, 5, 2, 1, 1])
100000000 1853564 List([23169860, 18843936, 14205961, 11069243, 8096786, 6362238, 4558374, 3591135, 2575180, 1965362, 1414986, 1115622, 770844, 608119, 436529, 325591, 229642, 181340, 125482, 98666, 68196, 50785, 36133, 28506, 19005, 14621, 10445, 7767, 5260, 4128, 2774, 2180, 1497, 1101, 763, 573, 369, 302, 217, 159, 110, 81, 52, 38, 19, 14, 5, 2, 1, 1])

time = 34h, 20min, 42,013 ms.

No comments :