Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add Gosu solution to 2009 Round 1C Problem C

  • Loading branch information...
commit 0854fc194562a61b1d36d3d98b4f4bf0db03823c 1 parent 869ee95
@mickalot mickalot authored
View
BIN  lib/guava-11.0.2.jar
Binary file not shown
View
201 src/codejam/y2009/round1c/C-large-practice.in
@@ -0,0 +1,201 @@
+100
+8 1
+3
+20 3
+3 6 14
+1 1
+1
+2 2
+1 2
+3 3
+1 2 3
+4 4
+1 2 3 4
+5 5
+1 2 3 4 5
+2863 24
+204 370 430 447 514 518 600 640 662 882 1257 1319 1406 1493 1502 1877 2067 2235 2423 2453 2496 2498 2603 2606
+8981 57
+253 328 499 850 935 1337 1349 1436 1589 1664 1742 1759 1949 2205 2234 2244 2357 2388 2399 2470 2609 2674 2722 2826 2838 3151 3408 3501 3627 3840 4048 4344 4580 4635 4834 5017 5291 5301 5468 5664 5907 5955 5976 6577 6626 6843 7085 7124 7376 7759 8012 8182 8375 8395 8557 8632 8716
+7302 81
+143 298 408 434 502 567 569 676 730 853 859 885 1029 1157 1174 1176 1213 1214 1246 1282 1429 1476 1484 1518 1530 1686 1778 1812 1817 1917 1925 1998 2160 2208 2264 2337 2352 2409 2756 2862 3024 3029 3082 3176 3401 3462 3472 3890 4073 4205 4220 4383 4398 4437 4524 4594 4600 4615 4685 4783 4902 4919 5003 5078 5132 5260 5432 5448 5465 5518 5577 5878 6028 6293 6390 6424 6474 6642 7017 7041 7083
+4429 44
+15 135 248 371 438 494 554 649 681 718 796 830 886 1391 1440 1489 1569 1589 1893 2038 2552 2623 2691 2738 2772 2938 3030 3148 3186 3438 3507 3555 3658 3668 3694 3717 3756 3869 4049 4060 4249 4295 4320 4393
+7829 100
+123 162 219 456 507 514 536 558 584 776 796 887 956 991 1213 1217 1258 1343 1353 1377 1409 1544 1716 1726 1899 1949 2051 2194 2279 2333 2363 2413 2632 2794 2868 2908 3001 3085 3088 3102 3119 3340 3421 3500 3587 3664 3958 3978 3994 4018 4094 4099 4151 4165 4374 4378 4412 4558 4566 4682 4798 4843 4945 4958 4986 5049 5089 5281 5313 5342 5476 5550 5658 5701 5863 5883 5992 6100 6172 6215 6223 6286 6320 6377 6495 6537 6546 6730 6765 6839 6875 7028 7044 7081 7152 7388 7399 7443 7739 7783
+1397 82
+3 18 61 85 89 91 93 99 112 128 136 140 156 165 175 186 187 195 225 226 274 286 350 360 363 392 462 465 470 486 498 499 518 525 530 580 593 597 600 611 612 635 644 661 680 692 702 722 725 735 746 780 788 796 821 827 860 881 883 891 981 1006 1007 1076 1122 1128 1169 1188 1207 1225 1253 1254 1258 1272 1287 1343 1346 1354 1359 1362 1375 1390
+2498 54
+2 14 23 61 92 174 275 328 340 393 429 476 484 496 499 621 679 691 758 985 1021 1120 1134 1208 1230 1268 1300 1306 1338 1369 1384 1386 1414 1444 1445 1459 1469 1491 1501 1622 1676 1690 1705 1713 1778 1809 1975 2113 2126 2193 2197 2280 2393 2485
+290 68
+1 3 7 12 21 22 42 48 51 55 57 60 61 71 74 77 78 79 85 90 91 92 111 117 118 121 125 133 135 142 143 151 165 167 169 177 179 186 197 203 213 214 216 220 225 226 228 231 234 241 246 247 248 251 253 257 258 260 262 263 267 270 273 274 278 281 286 290
+5850 38
+314 420 534 800 919 1082 1084 1090 1421 1776 1909 1972 2044 2060 2108 2196 2339 2409 2680 3395 3658 3775 3968 4068 4119 4190 4274 4374 4606 4784 4879 5060 5089 5273 5401 5558 5765 5838
+3174 48
+116 131 333 335 513 529 572 636 674 693 704 729 754 832 1019 1096 1151 1211 1264 1287 1398 1408 1591 1663 1721 1842 1849 1936 1941 1942 1944 1950 2045 2284 2382 2715 2771 2793 2924 2954 2962 2983 3016 3043 3055 3114 3125 3146
+3500 12
+128 306 951 1435 1564 1606 1712 1737 1819 2550 3061 3245
+3292 76
+36 90 97 135 145 165 179 219 367 390 451 474 539 566 571 648 722 731 748 760 835 840 915 934 992 1014 1064 1102 1116 1188 1195 1211 1215 1218 1221 1245 1280 1294 1333 1399 1422 1457 1482 1528 1547 1581 1599 1634 1855 1895 1907 1916 1926 1930 1990 2074 2168 2169 2174 2403 2440 2496 2558 2643 2675 2706 2710 2776 2948 2952 3086 3114 3138 3239 3241 3286
+866 61
+42 55 67 76 87 90 104 113 121 123 126 156 168 212 217 232 234 251 281 313 324 351 358 361 365 371 378 404 418 421 425 439 440 454 470 525 529 555 558 565 645 651 674 677 687 693 697 709 718 722 733 734 738 778 786 799 802 841 860 861 865
+908 60
+8 18 25 37 40 47 50 60 63 77 98 102 124 137 143 148 156 181 194 195 199 225 242 257 258 260 291 293 323 382 400 441 459 467 489 495 512 514 526 532 543 555 568 575 655 665 668 670 687 702 709 712 729 730 815 832 840 859 866 874
+8723 93
+274 304 358 462 483 617 627 749 815 903 1253 1259 1285 1289 1351 1356 1434 1569 1706 1782 1911 1934 1959 2094 2227 2256 2293 2417 2496 2500 2565 2693 2724 2796 2889 2975 3112 3141 3224 3274 3299 3363 3516 3803 3853 3890 3898 4070 4127 4146 4196 4518 4579 4605 4606 4739 4790 4987 4988 5003 5142 5277 5349 5469 5537 5585 5621 5714 5811 5943 5986 6087 6178 6191 6254 6313 6425 6427 6487 6531 6540 6614 6625 6784 6976 7151 7179 7273 7437 7933 7998 8507 8688
+1299 85
+11 23 42 53 55 56 60 70 74 81 91 156 170 172 176 192 222 226 250 264 265 289 295 301 305 342 344 356 374 383 410 413 421 424 425 432 440 441 465 504 522 537 554 594 598 642 673 703 705 720 751 779 804 847 848 855 961 965 970 975 981 1008 1013 1035 1041 1048 1057 1066 1100 1119 1151 1152 1164 1182 1212 1222 1227 1228 1244 1251 1256 1269 1277 1278 1286
+3413 39
+21 39 170 215 533 613 614 678 738 981 1057 1134 1226 1294 1332 1472 1478 1516 1562 1577 1595 1596 1863 1879 1994 2030 2161 2171 2388 2400 2603 2631 2660 2883 2978 2999 3036 3202 3261
+8824 87
+82 233 281 550 599 623 758 816 925 935 971 1051 1085 1090 1110 1371 1586 1649 1653 2166 2384 2388 2438 2563 2604 2690 2952 2960 3318 3399 3529 3568 3589 3688 3768 3783 4106 4283 4293 4294 4297 4470 4583 4609 4693 4853 5067 5294 5340 5348 5390 5665 5668 5734 5872 6014 6105 6293 6452 6510 6564 6722 6732 6754 6855 6915 6925 6926 7043 7050 7192 7609 7677 7684 7720 7873 7952 7955 8039 8055 8057 8107 8179 8543 8646 8657 8711
+2558 94
+58 98 157 162 188 197 224 229 243 278 400 435 470 585 612 614 635 662 756 773 782 828 838 908 911 912 920 952 962 972 984 994 1025 1044 1069 1085 1094 1143 1147 1178 1182 1188 1198 1203 1206 1226 1235 1267 1268 1292 1297 1310 1346 1370 1433 1455 1483 1507 1527 1553 1567 1574 1581 1582 1584 1607 1641 1684 1714 1723 1750 1758 1832 1890 1898 1912 1913 1951 1993 1995 2026 2033 2034 2048 2078 2105 2120 2166 2167 2203 2262 2322 2516 2518
+2444 80
+4 55 120 147 171 177 180 227 253 308 309 315 330 335 345 401 427 460 502 509 541 556 572 620 630 800 826 851 890 902 949 952 1006 1026 1091 1102 1140 1167 1170 1177 1230 1238 1262 1288 1306 1361 1385 1460 1470 1479 1509 1518 1538 1556 1612 1684 1717 1787 1836 1867 1877 1911 1919 1934 2015 2105 2165 2191 2214 2238 2245 2254 2281 2312 2319 2328 2337 2353 2360 2386
+10000 100
+84 165 217 280 357 496 520 529 571 597 635 636 758 802 953 1080 1124 1226 1305 1599 1632 1805 1877 1932 1987 1991 2014 2252 2340 2347 2408 2531 2541 2548 2607 2742 2752 2764 2940 3166 3293 3340 3447 3954 4159 4350 4524 4572 4585 4651 4684 4801 4920 4938 4977 5129 5345 5473 5495 5610 5626 5726 5736 5826 5884 6108 6268 6340 6422 6441 6497 6705 7132 7227 7331 7541 7543 7544 7582 7604 7646 7662 7833 8112 8139 8258 8303 8428 8485 8861 8973 9054 9175 9295 9296 9493 9562 9592 9820 9874
+10000 100
+4 50 116 188 382 517 630 764 898 1015 1063 1087 1198 1314 1321 1473 1516 1764 1901 1989 2036 2101 2273 2301 2335 2409 2439 2554 2635 2766 2834 2854 2907 2933 3004 3019 3180 3350 3398 3634 3769 3787 3848 3862 4099 4317 4426 4429 4487 4548 4644 4681 4696 4798 4979 4987 5027 5098 5101 5160 5186 5326 5880 5952 6067 6143 6367 6464 6506 6509 6561 6617 6627 6630 6749 6785 6798 6967 7395 7396 7410 7640 7777 7893 7915 7931 8099 8108 8330 8499 8586 8753 8776 9011 9155 9570 9614 9753 9878 9913
+10000 100
+324 603 752 770 776 870 1383 1476 1547 1634 1795 1983 1997 2291 2294 2325 2500 2516 2624 2687 2855 2881 2925 3038 3063 3073 3163 3294 3321 3333 3392 3541 3597 3843 3871 3880 3942 4089 4108 4164 4188 4304 4466 4536 4545 4812 4814 5015 5214 5340 5361 5362 5445 5465 5741 5816 5862 5874 5951 5982 6235 6383 6466 6488 6519 6535 6629 6909 6943 6952 7135 7136 7467 7495 7566 7709 7812 7985 8347 8412 8433 8501 8621 8682 8694 8697 8739 8827 8835 8978 9169 9344 9417 9452 9500 9684 9717 9808 9811 9854
+10000 100
+115 336 340 530 597 937 1010 1199 1255 1288 1521 1654 1691 1769 1863 1930 1943 1969 2026 2133 2141 2174 2256 2268 2281 2336 2350 2377 2554 2564 2729 2799 2958 2984 3044 3045 3282 3419 3440 3568 3661 3675 3824 3879 4058 4293 4397 4674 4698 4827 4888 4969 5170 5221 5293 5383 5491 5512 5524 5801 5950 6068 6423 6621 6767 6998 7036 7053 7058 7128 7206 7228 7372 7434 7458 7630 7661 7837 7884 8013 8148 8224 8261 8372 8482 8535 8609 8617 8722 8794 9171 9205 9222 9504 9541 9564 9588 9765 9884 9896
+10000 100
+11 13 18 159 393 505 570 615 700 733 927 1091 1281 1282 1485 1639 1743 1833 1868 1900 1938 1974 2001 2349 2367 2491 2498 2526 2539 2604 2627 2787 2895 2959 2974 3135 3166 3172 3414 3422 3447 3462 3606 3706 3749 3760 3808 3833 3924 4210 4411 4423 4570 4637 4855 4902 5019 5140 5359 5375 5401 5458 5662 6072 6128 6129 6170 6239 6357 6369 6621 6632 6755 6856 6953 7459 7471 7756 8001 8005 8321 8342 8543 8586 8781 8864 8866 8990 9091 9118 9129 9402 9410 9561 9563 9748 9760 9808 9834 9943
+10000 100
+35 283 293 297 354 462 513 524 539 551 648 755 841 931 1088 1418 1486 1493 1531 1695 1708 1709 1736 1785 1885 1984 2112 2338 2429 2534 2558 2725 2791 2803 2870 3022 3237 3321 3695 3721 4050 4192 4401 4493 4642 4783 4873 5016 5064 5140 5141 5165 5191 5221 5237 5326 5521 5744 6024 6089 6158 6159 6261 6351 6411 6523 6555 6577 6631 6789 6926 6957 7006 7052 7143 7243 7309 7570 7590 7655 7686 7711 7722 7798 7903 8015 8095 8143 8423 8449 8483 8549 8603 8645 8987 9300 9546 9635 9781 9956
+10000 100
+38 53 128 137 152 213 436 526 564 632 961 1090 1118 1124 1136 1162 1321 1434 1503 1626 2162 2298 2677 2782 2834 2852 2950 2977 2987 2997 3000 3009 3070 3317 3429 3487 3631 3683 3935 3951 3959 4115 4170 4417 4448 4512 4537 4675 4796 4932 4947 5266 5368 5376 5568 5768 5901 5917 6096 6148 6181 6230 6278 6440 6689 6791 6840 6907 6967 6975 7097 7209 7236 7352 7378 7571 7670 7698 7800 7807 7935 8018 8402 8448 8503 8567 8583 8675 8694 8803 8862 8979 9135 9243 9261 9278 9541 9691 9720 9902
+10000 100
+30 97 261 377 451 529 540 590 642 660 770 959 1143 1239 1468 1663 1737 1797 1802 1927 2015 2035 2083 2111 2303 2314 2363 2482 2632 2701 2712 2719 3008 3070 3108 3429 3496 3559 3580 3670 3767 3800 3991 4106 4473 4514 4566 4629 4685 4713 4760 4836 4857 5039 5161 5251 5408 5596 5711 5777 6228 6250 6258 6265 6336 6385 6555 6633 6635 6759 6854 6893 6978 6985 7037 7072 7195 7210 7266 7550 7564 7602 7700 7776 7968 8314 8431 8629 8945 9014 9354 9434 9444 9491 9552 9782 9877 9879 9928 9964
+10000 100
+211 298 436 457 556 574 627 769 807 858 876 1188 1395 1415 1649 1956 2201 2252 2497 2506 2602 2785 2796 3091 3194 3257 3448 3511 3543 3641 3682 3791 3843 3847 3861 3883 3950 3957 4296 4402 4565 4665 4724 4841 5048 5105 5236 5276 5291 5330 5589 5696 5705 5734 5739 5835 5860 6009 6252 6734 6902 7044 7196 7291 7367 7429 7573 7652 7683 7725 7737 7812 7835 7855 7890 7946 7947 8156 8259 8292 8326 8365 8409 8590 8727 8804 8864 9068 9094 9137 9145 9162 9165 9367 9370 9411 9449 9561 9652 9827
+10000 100
+208 449 638 659 879 912 947 948 1001 1303 1393 1411 1424 1515 1557 1787 1925 1984 2054 2070 2272 2309 2346 2720 2773 3151 3180 3183 3204 3254 3295 3371 3382 3514 3556 3853 3881 4072 4108 4126 4201 4320 4329 4368 4422 4463 4486 4557 4730 4759 4834 4862 4897 4952 5058 5109 5595 5627 5745 5805 5808 5905 5973 6008 6176 6287 6645 6658 6719 6747 7087 7124 7127 7138 7251 7260 7295 7325 7345 7509 7631 7646 7699 7806 7903 8079 8107 8130 8288 8531 8752 8859 9079 9211 9389 9441 9502 9730 9731 9886
+10000 100
+13 57 130 187 238 400 644 659 712 738 764 849 881 1043 1115 1121 1247 1306 1311 1319 1550 1555 1762 1895 1925 2112 2211 2301 2418 2836 3043 3320 3429 3442 3445 3459 3484 3486 4097 4187 4212 4226 4261 4287 4525 4590 4684 4764 4780 4854 4883 4894 4996 5056 5108 5248 5327 5329 5413 5507 5555 5645 5761 5790 5915 6359 6500 6551 6556 6629 6633 6702 6895 7043 7056 7090 7219 7232 7284 8110 8185 8242 8264 8265 8624 8778 8785 8826 8866 8980 9119 9142 9217 9282 9618 9640 9834 9951 9971 10000
+10000 100
+114 132 162 243 251 710 745 839 960 1003 1007 1019 1207 1273 1380 1545 1565 1887 2044 2111 2433 2597 2739 2781 2785 2848 2851 2905 2943 3024 3059 3103 3455 3490 3492 3599 3767 3819 3826 3869 3878 3926 3971 4043 4081 4285 4436 4462 4464 4486 4703 5136 5172 5290 5315 5316 5464 5540 5546 5658 5681 5753 5842 5876 6036 6072 6300 6620 6677 6849 6947 6990 7258 7320 7441 7583 7639 7757 7825 7987 7999 8054 8083 8216 8254 8338 8389 8489 8618 8642 8657 8907 8925 9175 9193 9214 9270 9357 9452 9963
+10000 100
+123 240 425 533 689 773 781 817 988 1187 1188 1289 1307 1441 1569 1643 1677 1699 1766 1771 1795 1860 2030 2212 2255 2332 2377 2471 2494 2509 2645 2710 3060 3065 3079 3194 3272 3329 3523 3727 3805 3955 4032 4304 4351 4370 4447 4523 4596 4873 4957 5149 5405 5414 5470 5527 5821 6229 6230 6231 6251 6356 6387 6449 6619 6648 6710 6851 6899 7178 7409 7501 7542 7745 7950 8004 8024 8052 8108 8227 8233 8243 8265 8400 8710 8989 9028 9268 9295 9359 9373 9440 9493 9529 9620 9681 9849 9907 9968 9977
+10000 100
+15 43 63 97 187 260 335 387 404 418 493 704 721 871 960 1044 1139 1150 1161 1336 1353 1729 1843 2062 2316 2484 2508 2650 2776 2894 3047 3160 3164 3182 3222 3349 3622 3703 3859 4031 4056 4058 4098 4304 4496 4507 4627 4636 4657 4736 4778 4875 5034 5110 5261 5369 5505 5659 5669 5740 6175 6235 6307 6388 6415 6443 6510 7038 7217 7447 7459 7524 7547 7684 7717 7814 7894 7935 7938 7965 8147 8203 8340 8395 8418 8467 8550 8767 8818 8825 8894 9118 9258 9301 9429 9463 9555 9711 9819 9959
+10000 100
+6 161 251 361 362 828 1003 1005 1049 1102 1143 1155 1255 1325 1449 1705 1755 1826 1879 1903 1930 2051 2168 2188 2204 2278 2327 2328 2347 2383 2585 2620 2755 2913 2960 3055 3184 3291 3364 3555 3607 3624 3662 3787 3940 3991 4140 4149 4150 4152 4226 4338 4413 4527 4681 4697 4903 5489 5514 5588 5765 5778 5872 5914 5928 5947 6011 6033 6125 6253 6257 6312 6343 6637 6749 6797 6995 7075 7112 7303 7535 7554 7576 7693 7905 8158 8338 8343 8381 8441 8446 8558 8561 8627 8662 9301 9553 9694 9810 9945
+10000 100
+125 431 708 783 869 993 1110 1126 1328 1452 1467 1565 1572 1745 1760 1795 1810 1880 2160 2174 2177 2204 2276 2293 2369 2432 2587 2662 2781 2862 3027 3158 3216 3288 3401 3459 3504 3631 3634 3659 3765 3903 4038 4047 4071 4478 4493 4661 4778 4822 4894 4946 4968 4975 5028 5067 5230 5248 5348 5433 5484 5574 5618 5987 6053 6272 6458 6485 6504 6586 6688 6712 6772 6791 6874 6899 6979 7125 7330 7364 7437 7661 7670 7851 8089 8159 8280 8369 8429 8610 8614 9148 9158 9256 9305 9340 9543 9639 9836 9961
+10000 100
+58 121 337 489 495 541 592 656 912 959 1054 1056 1150 1615 1632 1883 2038 2142 2200 2607 2639 2653 2836 2935 2937 2945 2959 3003 3054 3303 3328 3376 3423 3609 3848 4018 4092 4359 4489 4529 4651 4661 4997 5099 5108 5192 5206 5366 5440 5501 5539 5545 5771 5803 5893 6035 6084 6241 6389 6769 6851 7141 7224 7248 7351 7484 7496 7572 7611 7623 7655 7691 7718 7758 7798 7954 7984 8156 8188 8239 8296 8324 8356 8393 8404 8546 8583 8698 8727 8963 9022 9073 9197 9342 9362 9391 9452 9466 9477 9987
+10000 100
+213 255 260 608 836 880 882 1139 1167 1296 1305 1528 1534 1555 1559 1957 1977 2041 2056 2075 2119 2153 2197 2198 2257 2328 2588 2716 2775 2832 2837 2879 2909 2930 3258 3309 3581 3629 3830 3883 3900 4084 4130 4131 4172 4174 4297 4318 4351 4539 4562 4719 4781 4845 4888 4918 4970 5129 5413 5430 5451 5513 5609 5707 5806 5840 5890 6047 6131 6216 6509 6511 6529 6738 6764 6957 7020 7070 7220 7480 7747 8020 8056 8391 8400 8473 8624 8686 8708 8719 8801 8898 8971 9317 9423 9508 9601 9763 9766 9973
+10000 100
+39 117 264 397 419 531 763 868 888 944 976 1521 1590 1592 1644 1683 1743 2059 2070 2073 2075 2284 2290 2323 2552 2592 2618 2680 3003 3355 3446 3502 3612 3625 3818 4108 4194 4229 4404 4407 4447 4530 4815 4816 4853 4982 5091 5151 5194 5224 5260 5573 5592 5738 5766 5867 5992 6009 6027 6124 6132 6241 6299 6657 6781 6829 6866 7095 7173 7250 7268 7378 7442 7485 7617 7662 7706 7780 7810 7989 8021 8168 8251 8252 8371 8474 8785 8875 8922 9205 9260 9326 9468 9539 9736 9742 9773 9832 9848 9945
+10000 100
+40 70 109 178 314 353 580 792 846 873 1006 1056 1147 1250 1338 1415 1426 1606 1654 1747 1874 2070 2105 2167 2248 2430 2696 2698 2767 2858 2917 2976 3074 3131 3194 3201 3363 3371 3605 3917 3939 3970 4040 4241 4277 4419 4527 4636 4815 4897 4950 5024 5070 5177 5193 5258 5282 5297 5339 5390 5422 5680 6023 6147 6549 6570 6578 6708 6771 6826 6939 6940 6978 7002 7152 7162 7225 7361 7397 7416 7434 7503 7695 7959 8065 8387 8474 8681 8682 8733 8996 9000 9082 9092 9386 9406 9592 9756 9778 9860
+10000 100
+78 173 297 350 499 513 697 737 805 848 909 1019 1022 1054 1430 1444 1569 1617 1752 1848 1906 1926 2197 2299 2427 2462 2670 2744 2778 2831 2879 2887 2901 2903 3033 3089 3399 3438 3502 3519 3662 3663 3848 3959 3984 3995 4027 4350 4436 4544 4577 4826 4864 5230 5305 5352 5367 5425 5606 5652 5773 5970 6163 6256 6290 6324 6333 6348 6388 6393 6397 6441 6499 6871 6951 7005 7017 7109 7164 7452 7621 7641 7809 7876 7879 7951 8019 8051 8327 8448 8467 8765 8838 8902 9063 9223 9349 9519 9577 9967
+10000 100
+67 108 118 169 291 323 397 441 513 753 789 790 1212 1271 1335 1456 1656 1690 1695 1812 1978 2062 2093 2104 2159 2297 2494 2501 2710 2711 2804 2909 2931 3138 3221 3697 3737 3770 4043 4088 4272 4290 4348 4416 4455 4472 4909 4997 5163 5291 5592 5613 5663 5830 5942 6102 6144 6152 6157 6197 6211 6387 6405 6424 6472 6573 6608 6618 6654 6666 6767 7017 7097 7115 7127 7185 7250 7305 7340 7368 7566 7753 7784 7855 8075 8152 8448 8502 8853 8898 8925 8942 9020 9190 9200 9293 9440 9520 9678 9947
+10000 100
+39 177 311 372 458 542 763 931 983 1186 1401 1504 1653 1661 1777 1798 1997 2148 2191 2270 2335 2387 2425 2593 2691 2721 2965 3081 3189 3493 3524 3815 3939 4222 4310 4325 4341 4399 4673 4733 4983 5033 5171 5259 5381 5510 5631 5750 5754 5933 6022 6073 6084 6215 6306 6500 6539 6664 6827 7028 7047 7187 7341 7443 7530 7621 7753 7754 7804 7852 7936 8076 8133 8217 8242 8255 8264 8371 8475 8492 8521 8617 8652 8698 8781 8837 8847 8865 8953 9013 9158 9196 9235 9288 9326 9327 9390 9431 9763 9993
+10000 100
+59 150 197 311 371 438 831 869 939 948 1009 1244 1414 1457 1464 1494 1578 1602 1691 1757 2039 2102 2329 2410 2418 2421 2442 2473 2486 2583 2668 2906 3008 3147 3166 3260 3329 3349 3399 3436 3762 3919 3961 4083 4123 4133 4231 4376 4444 4827 4832 4903 4912 4914 5028 5324 5398 5416 5724 5739 5746 5752 5956 5996 6136 6198 6308 6414 6429 6434 6676 6680 6930 6990 7024 7126 7375 7396 7455 7508 7537 7592 7775 8033 8117 8132 8191 8229 8378 8487 8876 8991 9084 9320 9338 9347 9466 9640 9950 9959
+10000 100
+2 91 128 305 307 353 703 716 758 802 1028 1175 1180 1368 1419 1450 1476 1478 1739 1965 2009 2012 2216 2354 2789 2957 2982 3016 3044 3047 3064 3202 3203 3322 3504 3533 3695 3726 3856 3925 4110 4138 4151 4184 4219 4261 4324 4492 4496 4754 4832 4988 5083 5278 5498 5534 5543 5602 5612 5728 5737 6066 6132 6227 6467 6586 6615 6648 6713 6857 7567 7780 7965 7991 7999 8076 8217 8398 8400 8447 8521 8526 8665 8752 8857 8861 8872 8968 8977 8985 9127 9155 9306 9371 9404 9470 9477 9482 9594 9973
+10000 100
+71 232 305 354 412 722 759 798 800 846 877 947 953 1010 1221 1258 1515 1568 1587 1667 1722 1918 1954 2002 2043 2191 2245 2281 2289 2348 2761 2858 2976 2993 3144 3164 3245 3316 3516 3538 3874 3970 3990 4004 4113 4320 4336 4410 4626 4673 4772 4789 5057 5192 5206 5247 5292 5328 5333 5588 5942 6051 6131 6182 6455 6538 6946 7064 7081 7193 7330 7541 7604 7634 7640 7676 7772 7918 7984 8290 8395 8426 8429 8481 8515 8625 8786 8791 8848 8867 8930 9271 9335 9371 9404 9459 9469 9760 9794 9876
+10000 100
+77 94 216 441 593 728 1084 1149 1193 1205 1217 1236 1309 1379 1425 1648 1746 1976 2051 2158 2173 2193 2213 2401 2476 2565 2586 2807 2919 2975 3018 3039 3302 3308 3557 3567 3811 3841 4012 4092 4216 4318 4482 4538 4919 4970 5019 5408 5459 5483 5790 5812 5862 5896 5980 5989 6004 6073 6093 6150 6190 6217 6243 6318 6410 6542 6586 6758 6873 7071 7178 7185 7242 7282 7398 7451 7456 7487 7823 7850 8056 8231 8481 8485 8540 8587 8909 8923 8994 9154 9246 9258 9348 9429 9634 9756 9816 9833 9839 9987
+10000 100
+86 169 178 269 271 305 324 331 470 588 697 774 801 965 1027 1137 1306 1355 1362 1584 1666 1711 1778 1852 1885 2121 2207 2270 2560 2670 2889 3023 3079 3081 3102 3191 3296 3370 3386 3765 4191 4202 4658 4663 4683 4829 4862 5132 5367 5446 5452 5508 5558 5626 5975 6056 6067 6259 6427 6558 6648 6650 6783 6846 6990 7052 7107 7208 7242 7301 7304 7358 7409 7460 7510 7673 7761 7829 7874 7879 8004 8122 8236 8342 8447 8541 8586 8705 8712 8725 8763 8811 8826 8838 9004 9089 9190 9380 9520 9532
+10000 100
+78 117 160 255 263 301 381 472 534 547 580 592 708 825 960 976 1059 1354 1498 1680 1764 1817 2061 2096 2790 2800 2861 2919 3038 3089 3095 3196 3447 3559 3643 3701 3829 3905 3915 4011 4147 4228 4280 4555 4603 4685 5014 5155 5239 5280 5357 5388 5432 5509 5592 5639 5701 5821 5979 6129 6150 6221 6291 6301 6337 6376 6430 6451 6615 6738 6804 6828 6915 7184 7308 7330 7579 7682 7733 7774 7846 7990 8130 8161 8180 8312 8510 8565 8699 8724 8800 8815 8838 8955 9333 9498 9533 9534 9645 9704
+10000 100
+49 129 203 273 320 393 475 640 686 718 800 819 873 958 1071 1187 1367 1443 1569 1750 1753 1814 1928 1992 2228 2304 2394 2415 2439 2464 2468 2474 2561 2583 2613 2634 2650 2705 2820 2945 2984 3000 3158 3191 3220 3534 3594 3872 4019 4090 4096 4146 4214 4223 4224 4366 4438 4443 4456 4526 4582 4726 4780 4863 4910 4957 5116 5167 5223 5287 5534 5547 6135 6170 6205 6222 6481 6505 6684 7093 7141 7184 7316 7365 7424 7539 7716 7735 7784 7870 8246 8488 8778 8851 8967 9132 9349 9790 9803 9939
+10000 100
+259 306 348 497 559 568 585 614 662 738 759 800 801 1020 1090 1413 1490 1689 1821 1997 2057 2074 2110 2299 2405 2605 2946 3017 3125 3128 3404 3494 3542 3577 3607 3732 3779 3798 3838 3871 3979 4071 4208 4283 4299 4418 4472 4556 4620 4661 5047 5389 5410 5634 5756 5772 5995 6035 6059 6119 6170 6229 6247 6264 6277 6372 6383 6432 6457 6625 6668 6729 6869 6959 7047 7224 7566 7892 7992 8010 8192 8320 8445 8506 8595 8781 9086 9146 9154 9169 9254 9280 9292 9331 9434 9495 9627 9674 9819 9983
+10000 100
+183 511 550 735 776 844 897 958 1064 1095 1154 1192 1225 1701 1760 1835 1879 1895 1915 1934 1980 2033 2219 2395 2479 2497 2524 2591 2854 2917 2973 3226 3416 3429 3466 3530 3632 3746 3790 3873 3941 4012 4112 4295 4524 4552 4686 4814 5043 5059 5519 5594 5722 5904 5906 5976 6054 6297 6448 6546 6587 6693 6700 6754 6897 6998 7042 7060 7355 7395 7468 7504 7511 7538 7619 7724 7858 7878 7883 8024 8061 8150 8211 8306 8316 8436 8937 9042 9075 9095 9110 9193 9308 9340 9359 9610 9677 9813 9850 9940
+10000 100
+54 88 115 195 311 887 1092 1111 1135 1217 1534 1728 1807 2092 2382 2465 2621 2817 2952 2979 2981 3157 3186 3269 3296 3298 3400 3539 3590 3670 3701 3761 3813 3885 3908 4068 4070 4125 4219 4329 4488 4719 4729 4775 4840 4885 4945 4950 5009 5013 5080 5097 5113 5178 5245 5261 5390 5450 5509 5747 6382 6389 6392 6409 6430 6447 6547 6591 6618 6622 6646 6758 6848 6866 6869 6932 7288 7321 7461 7527 7598 7656 7667 7678 7793 8212 8674 8850 9005 9121 9322 9326 9350 9362 9420 9560 9590 9702 9792 9938
+10000 100
+74 76 119 124 256 463 514 527 620 769 866 922 1009 1133 1237 1382 1617 1941 2156 2287 2338 2428 2429 2590 2672 2801 2857 2877 3112 3242 3317 3495 3645 4063 4195 4452 4605 4647 4720 4722 4740 4747 4792 4884 5005 5006 5144 5216 5317 5337 5383 5406 5604 5623 5728 5910 5988 6037 6065 6102 6331 6452 6597 6702 6767 6830 6897 7023 7052 7167 7237 7244 7277 7403 7584 7678 7688 8166 8262 8366 8400 8415 8416 8475 8500 8628 8657 8676 8838 8864 9013 9279 9283 9390 9456 9587 9641 9723 9731 9889
+10000 100
+75 151 169 388 611 995 1055 1104 1202 1366 1460 1469 1497 1535 1556 1585 1591 1727 1982 1996 2190 2332 2382 2484 2487 2567 2651 2661 2673 2700 2764 2800 2844 2942 2959 2966 3188 3256 3281 3297 3466 3507 3516 3684 3764 3857 3947 4354 4462 4510 4538 4624 4698 4831 5154 5228 5511 5549 5560 5632 5741 5743 5873 5908 6139 6197 6359 6468 6830 6836 7201 7216 7333 7345 7498 7604 7661 7670 7765 7836 7919 8011 8062 8079 8122 8146 8470 8727 8736 8884 8917 9101 9146 9190 9247 9519 9525 9575 9635 9676
+10000 100
+64 143 288 405 596 708 879 960 1150 1276 1386 1486 1549 1750 1793 1992 2057 2102 2329 2721 2771 2778 2903 2933 2978 3023 3206 3214 3282 3316 3365 3427 3462 3638 3646 3832 3908 4082 4268 4584 4642 4681 4682 4830 4866 4948 5018 5123 5147 5155 5227 5352 5395 5511 5710 5787 5828 5918 6067 6265 6381 6427 6665 6668 6769 7023 7143 7156 7192 7194 7248 7272 7330 7631 7818 7886 7887 7972 8052 8128 8318 8631 8633 8690 8718 8827 8850 9116 9186 9203 9206 9227 9265 9266 9295 9446 9564 9885 9890 9973
+10000 100
+19 54 79 87 117 469 531 667 860 1036 1285 1531 1605 1627 1660 1736 1877 1993 2105 2187 2564 2620 2743 2812 3032 3050 3080 3103 3199 3289 3317 3592 3758 3761 3771 4286 4330 4343 4390 4774 4813 5032 5081 5306 5358 5412 5563 5656 5674 5787 5946 6010 6039 6058 6179 6253 6255 6285 6442 6464 6509 6576 6585 6688 6830 6858 6932 6985 7141 7275 7406 7413 7414 7583 7598 7676 7711 7719 7971 8047 8160 8199 8230 8277 8297 8451 8544 8629 8703 8791 8918 9089 9241 9318 9374 9402 9424 9532 9572 9889
+10000 100
+85 169 257 258 277 287 386 513 645 702 741 885 919 978 1003 1056 1323 1487 1615 1910 1925 2152 2207 2485 2494 2499 2516 2571 2595 2790 3347 3348 3653 3678 3728 4019 4027 4106 4216 4418 4507 4528 4533 4789 4865 4877 4968 5206 5288 5289 5668 5691 5744 5746 5880 5954 6146 6637 6682 6701 6822 6833 6838 6843 6886 6928 7010 7040 7141 7294 7347 7442 7482 7499 7522 7539 7631 7707 7842 7960 7972 8071 8248 8317 8418 8954 9039 9092 9131 9138 9399 9433 9446 9475 9516 9560 9620 9673 9710 9803
+10000 100
+68 95 225 273 461 525 605 868 984 1010 1022 1028 1029 1199 1239 1265 1560 1747 1942 1958 2025 2297 2614 2640 2647 2816 2893 2910 2922 2944 3152 3483 3488 3694 3704 3850 3892 3970 4367 4386 4454 4489 4511 4629 4648 4732 4742 4747 5019 5038 5058 5123 5207 5232 5254 5485 5516 5644 5775 5798 5812 5825 5936 5985 6071 6449 6568 6596 6641 6976 7039 7204 7316 7355 7429 7479 7488 7623 7663 7668 7669 7928 8124 8165 8183 8283 8384 8402 8508 8532 8593 8655 8921 8981 9096 9112 9203 9228 9869 9924
+10000 100
+20 61 132 182 280 554 643 687 761 887 981 1148 1261 1377 1505 1512 1530 1605 1744 1760 1765 1774 1790 1857 1878 1933 2235 2328 2419 2441 2459 2502 2651 2664 2753 3079 3525 3679 3909 3918 3969 4070 4166 4208 4463 4466 4523 4647 4737 4877 4902 4968 5044 5055 5196 5234 5330 5337 5372 5397 5429 5670 5689 6010 6225 6240 6365 6412 6450 6469 6470 6477 6651 6661 6769 6895 7120 7162 7228 7363 7398 7641 7912 7995 8157 8195 8245 8339 8606 8628 8705 8760 8831 8880 8943 9080 9233 9640 9847 9944
+10000 100
+179 261 327 471 488 616 817 821 940 948 984 986 1069 1126 1324 1421 1482 1564 1566 1665 1775 1841 1926 2203 2321 2403 2468 2497 2513 2532 2655 2844 2993 2994 3024 3150 3339 3751 3786 3829 3922 4009 4113 4141 4239 4316 4365 4603 4734 4769 4824 5436 5741 5859 5918 5980 5998 6129 6152 6169 6235 6489 6494 6735 6744 6839 6874 7309 7423 7582 7601 7700 7763 7974 8113 8237 8261 8291 8404 8417 8574 8747 8792 8912 8924 8941 8981 9061 9197 9328 9517 9531 9540 9557 9567 9711 9777 9878 9900 9928
+10000 100
+2 45 119 193 575 594 614 628 632 643 822 909 942 960 1105 1128 1158 1173 1247 1327 1403 1449 1450 1752 1949 1987 2165 2261 2569 2693 2813 2941 2950 3082 3148 3173 3272 3374 3394 3475 3485 3529 3559 3635 3668 3788 3885 3886 4101 4225 4364 4467 4496 4530 4546 4593 4703 5174 5221 5231 5250 5281 5382 5551 5658 5742 5899 6137 6219 6271 6361 6581 6804 6820 6915 6966 7061 7181 7397 7481 7496 7523 7532 7796 7854 7870 8024 8054 8145 8628 8635 8672 8767 8873 8899 9130 9225 9398 9454 9485
+10000 100
+73 95 111 262 273 437 564 586 589 621 778 960 1168 1344 1744 1746 1862 1941 1959 1976 2038 2072 2226 2235 2308 2311 2658 2820 2867 2928 3099 3151 3203 3334 3404 3416 3477 3646 3675 3719 3820 3866 3965 3980 3997 4070 4132 4440 4543 4601 4606 4688 4711 5038 5084 5182 5308 5309 5319 5392 5484 5813 5894 6105 6130 6225 6243 6265 6320 6430 6433 6446 6562 6688 6754 6765 7008 7492 7529 7533 7597 7695 7828 8096 8186 8653 8669 8862 8969 9024 9130 9485 9612 9660 9777 9885 9896 9921 9924 9949
+10000 100
+82 286 297 682 724 732 792 849 894 983 1149 1204 1392 1479 1499 1611 1633 1826 1869 1885 1991 2040 2272 2377 2395 2440 2471 2513 2542 2581 2874 3082 3186 3304 3420 3445 3520 3538 3591 3727 3783 4074 4083 4194 4258 4479 4787 4834 4967 5057 5114 5219 5271 5354 5452 5459 5610 5741 5777 5911 6111 6198 6243 6275 6313 6447 6490 6764 6777 7041 7142 7368 7386 7502 7655 7751 7760 7815 7885 7917 8276 8348 8450 8679 8813 8878 9023 9292 9364 9430 9448 9536 9599 9680 9845 9849 9880 9914 9929 9958
+10000 100
+125 151 351 600 735 1029 1162 1188 1191 1226 1246 1362 1410 1922 1990 2044 2142 2211 2293 2395 2432 2452 2495 2644 2916 3119 3170 3173 3655 3749 3925 3940 4016 4147 4214 4224 4374 4688 4690 4763 4933 4960 5110 5291 5463 5566 5576 5777 5794 5844 5854 5877 5880 5928 5931 5999 6053 6110 6175 6342 6349 6369 6445 6462 6467 6474 6568 7033 7058 7139 7199 7663 7682 7685 7686 7733 7864 7920 8281 8348 8399 8426 8719 8737 8824 8836 8928 8944 8996 9059 9125 9316 9340 9376 9461 9465 9603 9707 9791 9980
+10000 100
+291 304 353 375 392 402 492 515 621 647 692 806 868 883 1093 1210 1222 1235 1487 1599 1742 2155 2274 2294 2300 2384 2460 2702 3024 3037 3229 3391 3535 3545 3728 3806 3854 3881 3918 3943 3999 4099 4137 4176 4181 4213 4256 4411 4448 4461 4582 4586 4608 4683 4701 5074 5192 5324 5326 5490 5541 5658 5853 6226 6244 6328 6341 6550 6616 6678 6877 6948 7239 7454 7541 7568 7587 7603 7695 7738 7804 7844 7945 7982 8076 8255 8428 8636 8655 8715 8895 8943 8961 8972 9081 9113 9261 9616 9774 9852
+10000 100
+55 166 267 410 490 541 752 756 826 848 969 1141 1218 1276 1328 1337 1342 1427 1653 1658 1669 1966 2024 2037 2162 2239 2399 2517 2704 2735 3054 3061 3137 3202 3581 3808 3968 4027 4041 4069 4083 4247 4265 4324 4397 4540 4670 4698 4872 4890 4945 5047 5148 5285 5363 5382 5424 5473 5673 5899 5923 5980 6038 6079 6230 6241 6714 6803 6832 6881 7028 7092 7129 7157 7258 7314 7321 7566 7608 7751 7768 7770 7848 7957 8126 8161 8321 8398 8497 8505 8633 8661 8948 9242 9254 9442 9453 9544 9773 9989
+10000 100
+94 252 322 428 532 745 772 902 1109 1110 1134 1202 1393 1450 1585 1662 1668 1693 1761 1813 2067 2075 2236 2247 2278 2316 2337 2381 2927 2930 2990 3031 3125 3153 3194 3199 3240 3409 3467 3540 3816 3830 3949 4327 4392 4394 4445 4458 4465 4587 4614 4648 4787 4790 4812 4826 4862 4899 4922 4935 4982 5021 5234 5239 5245 5497 5633 5643 5649 5661 5691 5924 6099 6154 6443 6619 6747 6915 6932 6966 7011 7204 7371 7895 8151 8294 8486 8559 8678 8774 8797 8897 9091 9207 9218 9306 9447 9459 9651 9832
+10000 100
+99 201 214 227 237 242 378 505 652 847 852 886 888 986 1052 1636 1704 1870 1877 1896 2342 2387 2411 2490 2503 2863 3028 3074 3178 3505 3596 3613 3657 3778 3883 4137 4150 4212 4243 4320 4351 4450 4595 4611 4698 4705 4919 5161 5470 5504 5538 5635 5667 5670 5766 5809 6030 6265 6355 6446 6553 6814 6913 6930 7100 7113 7168 7185 7310 7314 7329 7359 7514 7540 7976 8037 8045 8106 8134 8176 8190 8259 8631 8682 8755 8784 8786 8808 8868 8892 9019 9052 9118 9338 9676 9681 9747 9843 9950 9958
+10000 100
+33 245 307 422 656 683 684 686 703 719 879 1065 1161 1250 1324 1486 1563 1586 1660 1744 1792 1801 1805 1868 1997 2040 2046 2084 2256 2314 2326 2328 2343 2413 2467 2477 2483 2532 2539 2802 2880 2891 3611 4311 4489 4571 4811 4951 5021 5091 5129 5206 5262 5334 5658 5731 5798 6052 6057 6117 6174 6246 6294 6344 6363 6368 6397 6453 6483 6601 6859 6898 6983 7003 7016 7047 7235 7407 7459 7469 7704 7918 8003 8155 8216 8401 8447 8619 8677 8780 8852 9099 9201 9241 9266 9401 9539 9577 9916 9935
+10000 100
+6 181 229 331 533 599 604 763 899 923 1015 1059 1158 1227 1315 1520 1674 1708 1756 1888 1922 1985 2249 2363 2632 2735 2736 3302 3326 3493 3547 3575 3616 3817 3823 3960 4021 4025 4049 4050 4177 4305 4408 4492 4653 4687 4784 4788 4799 5137 5220 5227 5393 5479 5488 5531 5538 5547 5605 5617 5667 5704 5728 5939 6043 6144 6145 6550 6645 6658 6694 6817 7095 7217 7438 7476 7751 8100 8216 8278 8314 8507 8524 8551 8552 8570 8895 8913 9163 9192 9250 9260 9446 9493 9499 9574 9761 9772 9834 9914
+10000 100
+73 161 198 255 303 562 654 966 1001 1077 1078 1117 1126 1219 1389 1435 1443 1468 1522 1598 1601 1703 1802 1863 1995 2042 2182 2245 2267 2411 2595 2598 2634 2721 2751 2832 2877 3120 3243 3261 3462 3497 3541 3543 3569 3751 3845 4120 4260 4404 4441 4779 5083 5126 5141 5226 5313 5330 5404 5514 5521 5809 5891 6018 6099 6145 6280 6301 6446 6937 7013 7052 7085 7119 7131 7166 7208 7406 7491 7498 7537 7570 7695 7737 7998 8147 8161 8164 8318 8426 8575 8763 8933 8968 9374 9448 9496 9641 9811 9925
+10000 100
+173 257 447 460 802 810 1004 1089 1124 1146 1560 1794 1811 1881 1904 1938 2002 2102 2458 2488 2693 2748 2859 2978 3077 3239 3405 3440 3479 3782 3821 3889 4058 4091 4121 4186 4196 4268 4363 4492 4509 4569 4605 4655 4762 4773 5097 5181 5199 5317 5611 5689 5703 5758 5916 6022 6056 6250 6377 6493 6600 6668 6670 6682 6903 6996 7055 7063 7079 7093 7123 7326 7568 7646 7703 7742 7841 7871 7872 7966 7973 8182 8471 8493 8600 8846 8919 8962 9016 9353 9457 9701 9766 9804 9861 9885 9888 9917 9936 9987
+10000 100
+24 124 184 415 591 885 971 979 1107 1130 1295 1439 1561 1594 1628 1859 2049 2098 2375 2454 2977 3136 3200 3398 3538 3563 3609 3781 3788 3997 4033 4108 4297 4304 4405 4488 4580 4597 4645 4684 4746 4760 4775 4829 5058 5197 5525 5577 5678 5843 5853 6079 6272 6274 6438 6583 6682 6781 6895 6897 6918 7006 7116 7125 7126 7139 7158 7179 7190 7202 7362 7455 7505 7556 7644 7771 7834 7995 8028 8072 8135 8181 8251 8268 8309 8530 8604 8627 8629 8742 8923 8964 9049 9235 9340 9590 9646 9710 9811 9886
+10000 100
+254 287 346 393 407 467 549 562 565 651 742 981 1018 1182 1343 1476 1479 1637 1691 1793 1820 1893 2021 2053 2148 2224 2229 2464 2556 2607 2790 2981 2995 3086 3095 3539 3597 3915 3998 4062 4104 4198 4206 4706 4716 4720 4758 4763 4801 4978 5011 5023 5089 5197 5253 5278 5324 5457 5568 5579 5591 5691 5759 5841 5889 6030 6169 6188 6201 6256 6272 6336 6504 6578 6657 6673 6698 6939 7464 7601 7663 7799 7940 8020 8117 8131 8525 8567 8603 8718 8958 8981 9170 9196 9226 9378 9519 9583 9618 9793
+10000 100
+60 164 260 295 437 532 569 611 746 871 886 895 911 1154 1234 1252 1298 1458 1613 1791 1833 1895 2041 2315 2653 2865 2940 2947 3161 3203 3208 3274 3336 3352 3389 3802 3905 4003 4020 4030 4066 4149 4165 4274 4473 4520 4537 4588 4733 4811 4816 4937 5067 5083 5210 5247 5261 5337 5345 5427 5523 5526 6073 6198 6220 6222 6231 6352 6395 6408 6481 6543 6646 6686 6737 6747 7058 7247 7384 7505 7821 7889 7919 7998 8125 8340 8341 8453 8456 8462 8516 8549 8829 8903 8997 9102 9297 9865 9929 9950
+10000 100
+50 293 472 500 549 703 736 889 1021 1214 1321 1377 1435 1473 1501 1635 1736 1990 2034 2074 2461 2593 2823 2975 3094 3108 3189 3234 3273 3287 3315 3448 3473 3548 4008 4017 4198 4607 4713 4871 4972 4985 5034 5075 5134 5390 5411 5508 5731 5767 5868 5940 5996 6128 6156 6247 6260 6322 6355 6399 6407 6445 6456 6826 6844 6904 7200 7339 7367 7406 7665 7700 7720 7729 7841 8033 8165 8227 8306 8315 8470 8530 8726 8807 9023 9101 9118 9221 9227 9324 9356 9367 9376 9482 9487 9503 9510 9603 9738 9869
+10000 100
+60 293 408 445 554 779 839 851 948 1092 1183 1265 1449 1667 1718 1882 1903 1926 2039 2089 2259 2286 2397 2436 2732 2866 2903 3087 3142 3223 3280 3324 3326 3329 3496 3573 3599 3868 3885 4029 4446 4452 4477 4501 4622 4636 4815 4833 4841 4851 5028 5112 5226 5415 5427 5634 5690 5713 5738 5937 6067 6117 6144 6169 6245 6436 6469 6669 7214 7264 7473 7552 7572 7608 7639 7640 7694 7785 7949 7977 7992 8041 8235 8359 8385 8435 8787 8865 8945 9017 9164 9221 9427 9571 9647 9716 9772 9793 9797 9929
+10000 100
+12 28 271 280 486 528 701 702 835 880 1028 1051 1129 1148 1577 1594 1637 1702 1909 1913 2377 2430 2504 2513 2957 3071 3084 3522 3777 3786 3787 3866 3917 3954 3985 4048 4217 4233 4291 4551 4562 4629 4940 4961 5005 5110 5198 5487 5505 5734 5884 5957 6019 6076 6285 6452 6646 6651 6819 6822 6850 6855 7021 7087 7212 7359 7546 7571 7712 7759 7787 7915 7997 8031 8065 8108 8175 8187 8203 8344 8387 8431 8452 8691 8700 8715 8788 8805 8824 9003 9054 9173 9272 9327 9394 9541 9615 9657 9665 9795
+10000 100
+83 186 246 487 492 510 549 563 920 933 973 1047 1083 1113 1316 1404 1410 1711 1736 1805 1810 1885 2187 2207 2685 2693 2705 2733 2767 2841 3060 3068 3272 3274 3289 3305 3469 3590 3812 3916 4008 4073 4309 4315 4390 4522 4779 4836 4923 5227 5277 5334 5340 5399 5667 5673 5998 6127 6133 6174 6178 6222 6344 6406 6592 6634 6725 6789 6830 6848 6878 6880 6918 6952 6962 7024 7058 7082 7094 7247 7874 7875 7931 7942 8146 8188 8371 8416 8449 8476 8507 8570 8629 8958 8995 9028 9184 9532 9543 9609
+10000 100
+162 172 207 221 539 563 593 722 798 809 858 960 975 980 1108 1167 1193 1352 1385 1451 1492 1565 1775 1971 2073 2081 2149 2165 2196 2350 2401 2622 2632 2697 2698 2732 3050 3103 3194 3210 3260 3297 3353 3373 3385 3403 3508 3618 3722 3730 3737 4083 4347 4406 4506 4538 4886 4894 4928 5241 5252 5271 5275 5367 5380 5401 5577 5746 5959 6028 6078 6155 6225 6433 6462 6531 6726 6814 7001 7130 7160 7237 7238 7490 7575 7809 7877 8375 8457 8679 8689 8810 9081 9160 9346 9374 9382 9423 9617 9969
+10000 100
+261 270 637 675 790 858 860 1112 1343 1427 1586 1686 1696 1743 1798 2005 2277 2364 2545 2735 2806 3033 3040 3172 3221 3601 3769 3794 3883 4043 4047 4104 4181 4316 4519 4551 4721 4802 4943 4958 5077 5088 5189 5312 5339 5383 5490 5856 5992 6013 6048 6173 6334 6392 6487 6601 6711 6723 6775 6783 6792 6817 6914 7200 7239 7261 7357 7445 7532 7575 7660 7728 7732 7861 7931 8001 8115 8207 8215 8304 8355 8514 8517 8935 9073 9077 9131 9169 9219 9239 9481 9492 9525 9728 9785 9837 9844 9862 9905 9934
+10000 100
+86 124 312 460 752 923 1088 1141 1241 1264 1436 1477 1727 1750 1820 1821 1839 1868 1942 2033 2066 2070 2445 2446 2714 2924 3018 3353 3428 3641 3882 3918 4056 4107 4236 4312 4359 4386 4466 4496 4503 4514 4723 4785 4839 4968 5023 5107 5328 5376 5487 5523 5677 5720 5738 5810 5876 6047 6049 6104 6156 6159 6161 6195 6239 6401 6414 6449 6594 6781 6859 6898 6912 6940 7085 7107 7248 7279 7481 7537 7625 7649 8024 8175 8240 8626 8732 8763 8866 8924 8963 9196 9320 9368 9376 9409 9638 9679 9861 9898
+10000 100
+174 266 466 545 570 707 775 776 1101 1164 1185 1238 1256 1469 1594 1630 1687 1715 1833 2046 2163 2164 2281 2311 2509 2636 3054 3085 3246 3294 3305 3974 4006 4026 4131 4404 4492 4565 4789 4817 4819 4864 5010 5114 5129 5267 5383 5446 5467 5609 5955 5972 6003 6158 6185 6455 6713 7123 7172 7198 7235 7282 7302 7338 7352 7501 7555 7603 7686 7689 7894 7923 7972 8002 8055 8145 8257 8312 8360 8540 8605 8613 8876 8990 9087 9291 9381 9471 9539 9605 9655 9700 9744 9839 9840 9847 9864 9886 9909 9965
+10000 100
+92 246 748 906 994 1214 1321 1428 1446 1463 1663 1824 2087 2132 2167 2295 2340 2482 2497 2501 2613 2658 2782 2792 2831 2862 3078 3095 3275 3299 3765 3769 3784 3795 3801 3851 3853 3856 4142 4346 4432 4505 4672 4673 4817 4932 5082 5160 5179 5684 5732 5747 5816 5896 5917 5975 6051 6091 6153 6184 6235 6244 6308 6355 6555 6560 6609 6667 6748 6880 6945 6952 6974 7026 7073 7230 7273 8069 8096 8258 8335 8381 8383 8394 8514 8523 8637 8675 8813 8978 9051 9069 9185 9259 9488 9616 9717 9759 9817 9839
+10000 100
+71 147 187 250 418 637 844 928 1114 1174 1192 1409 1607 1626 1691 1744 1753 2029 2250 2325 2407 2490 2597 3135 3142 3295 3369 3406 3429 3438 3439 3492 3592 3593 3631 3641 3654 3846 3851 3872 3873 3931 4406 4619 4632 4634 4818 4860 4919 5118 5270 5414 5474 5666 5669 5684 5777 5840 5902 5935 6074 6159 6201 6523 6563 6589 6592 6673 6761 6795 6905 6997 7093 7138 7145 7175 7184 7472 7591 7705 7711 7765 7943 8130 8417 8497 8567 8733 8735 8955 9139 9162 9173 9178 9373 9493 9509 9631 9829 9945
+10000 100
+72 105 258 276 289 499 509 575 655 699 732 774 1275 1352 1368 1648 1681 1788 1807 1874 2024 2353 2432 2467 2680 2690 2740 2858 2894 2912 2951 3192 3204 3362 3454 3488 4155 4195 4375 4526 4599 4752 4768 4808 4904 5077 5093 5197 5210 5300 5307 5320 5412 5481 5553 5639 5862 5964 6052 6207 6217 6256 6257 6510 6529 6584 6767 6773 6846 6930 6968 6978 7027 7183 7272 7375 7668 7994 8092 8117 8137 8296 8437 8527 8688 8740 8790 8819 8848 9017 9208 9234 9240 9279 9292 9323 9474 9606 9816 9884
+10000 100
+155 164 207 236 270 389 390 551 628 853 871 980 1020 1173 1201 1207 1225 1334 1354 1403 1753 1845 1919 1972 1980 2060 2086 2095 2341 2485 2502 2540 2576 2653 2794 2892 2893 2896 2928 2993 3341 3684 3702 3746 3763 3768 3957 4086 4170 4431 4456 4637 4873 5030 5043 5052 5188 5231 5351 5531 5634 5740 5789 5978 6075 6106 6334 6339 6429 6433 6468 6502 6524 6619 6689 6880 6904 7199 7535 7661 7737 7752 7883 7929 8050 8070 8147 8311 8762 8783 8877 8991 9001 9083 9216 9270 9466 9521 9618 9842
+10000 100
+366 444 515 527 794 813 911 1065 1066 1071 1077 1257 1267 1487 1601 1739 1824 2105 2233 2300 2347 2422 2486 2493 2605 2631 2781 2815 2950 3002 3032 3387 3423 3438 3456 3479 3566 3676 3705 3886 3935 4050 4063 4096 4183 4206 4213 4275 4432 4720 4828 5386 5552 5557 5608 5770 5777 5787 5808 5819 5973 6022 6034 6123 6131 6425 6468 6481 6587 6768 6995 7035 7080 7200 7343 7441 7486 7513 7583 7601 7758 7844 7882 8219 8275 8412 8548 8612 8753 8919 8943 8985 9175 9705 9738 9775 9818 9831 9908 9937
+10000 100
+62 107 217 225 230 758 827 836 924 941 942 962 1018 1037 1093 1242 1248 1640 1660 1788 1795 2058 2368 2380 2499 2596 2619 2824 2839 2934 3007 3172 3525 3740 3786 3877 3916 4015 4065 4100 4255 4326 4534 4543 4551 4822 4823 4856 4858 4922 5011 5045 5129 5495 5529 5564 5567 5572 5673 5781 5799 5879 6006 6065 6187 6292 6491 6654 6729 6764 6774 6908 6954 7035 7228 7265 7309 7452 7711 7735 8090 8112 8293 8607 8844 8860 8874 9029 9167 9185 9403 9432 9447 9593 9676 9744 9781 9866 9953 9966
+10000 100
+116 123 175 178 255 499 643 820 868 876 987 998 1014 1186 1256 1273 1413 1488 1705 1785 2060 2121 2236 2302 2352 2673 2676 2819 2973 3047 3101 3189 3266 3628 3643 3732 3768 3791 3885 3934 3945 4037 4076 4102 4192 4397 4399 4777 4883 4947 5124 5136 5204 5258 5606 5746 5791 5861 6095 6116 6147 6218 6272 6408 6423 6461 6480 6577 6700 6759 6769 6803 6829 6830 6832 6869 7068 7460 7653 7877 7964 7998 8012 8131 8136 8188 8210 8568 8699 8716 8909 8928 9120 9187 9330 9398 9520 9596 9611 9834
+10000 100
+19 95 280 287 429 680 720 738 748 802 820 866 994 1164 1298 1381 1653 1661 1735 1816 1909 1958 1980 1982 2052 2061 2125 2174 2197 2362 2380 2566 2622 2684 2889 2950 3250 3294 3333 3566 3568 3715 3721 3821 3995 4284 4301 4310 4361 4367 4584 4703 4818 4911 4927 4943 5174 5191 5265 5323 5495 5670 5676 5870 5925 6036 6516 6534 6593 6599 6665 6686 6841 7085 7121 7148 7221 7248 7298 7370 7453 7610 7774 7776 7828 8039 8491 8592 8731 8882 8990 9226 9266 9344 9579 9619 9742 9783 9809 9961
+10000 100
+65 69 296 401 495 713 754 767 899 1158 1431 1465 1473 1725 1769 1797 1985 2005 2036 2113 2291 2434 2449 2575 2589 2653 2665 3022 3031 3238 3430 3500 3628 3676 3803 3815 3848 3944 4137 4222 4511 4618 4758 4778 4933 5018 5106 5212 5259 5321 5342 5401 5516 5625 5766 5966 6133 6220 6484 6487 6488 6544 6707 6802 6923 7028 7092 7223 7279 7513 7514 7560 7569 7644 7732 8057 8117 8161 8171 8185 8257 8338 8358 8482 8503 8507 8670 8709 8753 8771 8778 8975 9206 9406 9487 9529 9568 9717 9785 9909
View
100 src/codejam/y2009/round1c/C-large-practice.out
@@ -0,0 +1,100 @@
+Case #1: 7
+Case #2: 35
+Case #3: 0
+Case #4: 1
+Case #5: 2
+Case #6: 4
+Case #7: 6
+Case #8: 11850
+Case #9: 49850
+Case #10: 43015
+Case #11: 22187
+Case #12: 49154
+Case #13: 8087
+Case #14: 13151
+Case #15: 1538
+Case #16: 28823
+Case #17: 16122
+Case #18: 11369
+Case #19: 19040
+Case #20: 4629
+Case #21: 4839
+Case #22: 53611
+Case #23: 7574
+Case #24: 16825
+Case #25: 52343
+Case #26: 15421
+Case #27: 14502
+Case #28: 62288
+Case #29: 62542
+Case #30: 61944
+Case #31: 63145
+Case #32: 62147
+Case #33: 62499
+Case #34: 62188
+Case #35: 62233
+Case #36: 62226
+Case #37: 61923
+Case #38: 59925
+Case #39: 61910
+Case #40: 62187
+Case #41: 62502
+Case #42: 61191
+Case #43: 62758
+Case #44: 61891
+Case #45: 62004
+Case #46: 61965
+Case #47: 62789
+Case #48: 62314
+Case #49: 61909
+Case #50: 63814
+Case #51: 61974
+Case #52: 61171
+Case #53: 61833
+Case #54: 62603
+Case #55: 62272
+Case #56: 62322
+Case #57: 61744
+Case #58: 62178
+Case #59: 62248
+Case #60: 60242
+Case #61: 62875
+Case #62: 62175
+Case #63: 62768
+Case #64: 62412
+Case #65: 60934
+Case #66: 61060
+Case #67: 62061
+Case #68: 62066
+Case #69: 61438
+Case #70: 61323
+Case #71: 63217
+Case #72: 60854
+Case #73: 61936
+Case #74: 62765
+Case #75: 61184
+Case #76: 60573
+Case #77: 60671
+Case #78: 61738
+Case #79: 62257
+Case #80: 62046
+Case #81: 62839
+Case #82: 61812
+Case #83: 61207
+Case #84: 62354
+Case #85: 62518
+Case #86: 62031
+Case #87: 60501
+Case #88: 61752
+Case #89: 62628
+Case #90: 62556
+Case #91: 61384
+Case #92: 60816
+Case #93: 61556
+Case #94: 61674
+Case #95: 62083
+Case #96: 61375
+Case #97: 61698
+Case #98: 62102
+Case #99: 62469
+Case #100: 63063
View
201 src/codejam/y2009/round1c/C-small-practice.in
@@ -0,0 +1,201 @@
+100
+8 1
+3
+20 3
+3 6 14
+1 1
+1
+2 2
+1 2
+3 3
+1 2 3
+4 4
+1 2 3 4
+5 5
+1 2 3 4 5
+63 4
+1 2 6 20
+23 4
+6 10 18 23
+12 3
+9 10 12
+38 4
+15 27 29 36
+92 1
+49
+74 3
+26 65 73
+6 1
+3
+28 2
+6 27
+30 4
+13 16 18 25
+46 5
+6 19 20 31 37
+88 4
+5 37 43 65
+4 2
+3 4
+33 1
+21
+69 5
+2 18 37 59 64
+96 1
+75
+79 3
+8 12 38
+18 3
+3 8 17
+81 2
+29 70
+90 5
+41 60 68 70 82
+98 2
+4 62
+100 5
+10 28 57 68 98
+100 5
+7 54 66 84 87
+100 5
+20 25 29 33 72
+100 5
+4 20 30 69 71
+100 5
+9 16 41 50 97
+100 5
+19 24 46 47 52
+100 5
+22 56 65 80 89
+100 5
+1 29 42 51 94
+100 5
+15 25 35 65 88
+100 5
+28 44 57 66 92
+100 5
+33 37 38 52 60
+100 5
+8 22 29 75 76
+100 5
+30 36 38 59 96
+100 5
+12 19 29 44 94
+100 5
+5 29 30 44 77
+100 5
+7 14 39 41 64
+100 5
+5 19 29 70 89
+100 5
+18 25 44 71 97
+100 5
+26 73 84 91 100
+100 5
+6 40 45 55 91
+100 5
+43 65 70 83 87
+100 5
+5 8 49 56 98
+100 5
+12 23 29 44 100
+100 5
+12 23 41 47 69
+100 5
+2 6 11 31 62
+100 5
+6 21 37 45 79
+100 5
+9 17 23 27 66
+100 5
+25 38 59 63 83
+100 5
+1 25 37 53 100
+100 5
+51 69 72 74 80
+100 5
+31 32 34 82 95
+100 5
+61 64 82 97 100
+100 5
+14 60 69 74 91
+100 5
+27 41 67 85 96
+100 5
+37 43 77 85 91
+100 5
+8 19 46 57 80
+100 5
+13 49 60 73 88
+100 5
+10 11 37 43 88
+100 5
+2 7 14 22 73
+100 5
+5 20 22 56 100
+100 5
+6 12 40 41 68
+100 5
+28 29 51 59 85
+100 5
+21 23 25 70 97
+100 5
+31 73 82 85 93
+100 5
+23 26 51 73 86
+100 5
+14 41 43 99 100
+100 5
+10 25 82 91 99
+100 5
+20 33 37 56 95
+100 5
+5 70 74 77 80
+100 5
+43 51 56 61 80
+100 5
+6 22 68 85 94
+100 5
+5 14 27 55 62
+100 5
+3 7 45 60 85
+100 5
+22 29 43 69 90
+100 5
+9 37 59 73 99
+100 5
+4 9 34 49 54
+100 5
+34 49 55 68 91
+100 5
+1 30 47 69 89
+100 5
+4 34 50 91 98
+100 5
+54 64 87 93 98
+100 5
+26 53 76 89 97
+100 5
+15 30 37 58 61
+100 5
+5 22 28 29 61
+100 5
+3 49 51 57 95
+100 5
+3 40 44 98 100
+100 5
+1 4 29 48 82
+100 5
+35 36 39 52 60
+100 5
+5 16 28 40 93
+100 5
+30 44 50 65 86
+100 5
+1 36 39 72 78
+100 5
+50 68 89 90 93
+100 5
+30 44 45 91 96
+100 5
+27 41 42 70 83
View
100 src/codejam/y2009/round1c/C-small-practice.out
@@ -0,0 +1,100 @@
+Case #1: 7
+Case #2: 35
+Case #3: 0
+Case #4: 1
+Case #5: 2
+Case #6: 4
+Case #7: 6
+Case #8: 84
+Case #9: 46
+Case #10: 14
+Case #11: 76
+Case #12: 91
+Case #13: 128
+Case #14: 5
+Case #15: 48
+Case #16: 58
+Case #17: 112
+Case #18: 198
+Case #19: 3
+Case #20: 32
+Case #21: 159
+Case #22: 95
+Case #23: 124
+Case #24: 32
+Case #25: 131
+Case #26: 191
+Case #27: 157
+Case #28: 253
+Case #29: 239
+Case #30: 213
+Case #31: 242
+Case #32: 242
+Case #33: 201
+Case #34: 237
+Case #35: 243
+Case #36: 247
+Case #37: 249
+Case #38: 202
+Case #39: 239
+Case #40: 229
+Case #41: 236
+Case #42: 236
+Case #43: 231
+Case #44: 240
+Case #45: 247
+Case #46: 219
+Case #47: 247
+Case #48: 221
+Case #49: 245
+Case #50: 236
+Case #51: 239
+Case #52: 201
+Case #53: 237
+Case #54: 211
+Case #55: 250
+Case #56: 245
+Case #57: 186
+Case #58: 214
+Case #59: 175
+Case #60: 233
+Case #61: 242
+Case #62: 230
+Case #63: 245
+Case #64: 244
+Case #65: 235
+Case #66: 207
+Case #67: 231
+Case #68: 232
+Case #69: 246
+Case #70: 221
+Case #71: 217
+Case #72: 246
+Case #73: 223
+Case #74: 221
+Case #75: 245
+Case #76: 208
+Case #77: 214
+Case #78: 230
+Case #79: 229
+Case #80: 239
+Case #81: 245
+Case #82: 256
+Case #83: 208
+Case #84: 244
+Case #85: 254
+Case #86: 236
+Case #87: 193
+Case #88: 229
+Case #89: 235
+Case #90: 210
+Case #91: 244
+Case #92: 235
+Case #93: 225
+Case #94: 197
+Case #95: 232
+Case #96: 247
+Case #97: 257
+Case #98: 191
+Case #99: 217
+Case #100: 238
View
117 src/codejam/y2009/round1c/C.gsp
@@ -0,0 +1,117 @@
+classpath "../../../../lib/guava-11.0.2.jar"
+
+// Solution for 2009 Round 1C Problem C "Bribe the Prisoners"
+// http://code.google.com/codejam/contest/189252/dashboard#s=p1
+
+uses java.io.*
+uses java.lang.*
+uses java.math.BigDecimal
+uses java.text.DecimalFormat
+uses java.util.*
+
+uses com.google.common.collect.ImmutableList
+
+class State {
+ var _first : int as First
+ var _last : int as Last
+ var _cells : List<Integer> as CellsToRelease
+
+ override function equals(obj : Object) : boolean {
+ return (obj typeis State) && obj._first == _first && obj._last == _last && _cells.equals(obj._cells)
+ }
+
+ override function hashCode() : int {
+ return _first + _last + _cells.hashCode()
+ }
+
+ override function toString() : String {
+ return "${First}-${Last}: ${CellsToRelease}"
+ }
+}
+
+class Solver {
+
+ function genStateLeftOf(state : State, cell : int, cellIndex : int) : State {
+ return new State() {
+ :_first = state.First,
+ :_last = cell,
+ :_cells = state.CellsToRelease.subList(0, cellIndex)
+ }
+ }
+
+ function genStateRightOf(state : State, cell : int, cellIndex : int) : State {
+ return new State() {
+ :_first = cell,
+ :_last = state.Last,
+ :_cells = state.CellsToRelease.subList(
+ cellIndex + 1, state.CellsToRelease.size())
+ }
+ }
+
+ function calculateCostFor(state : State) : int {
+ if (state.CellsToRelease.Empty) {
+ return 0
+ }
+ var lowestCost = Integer.MAX_VALUE
+ var costOfNextRemoval = state.Last - state.First - 2
+ for (cell in state.CellsToRelease index cellIndex) {
+ var leftCost = calculateCostFor(genStateLeftOf(state, cell, cellIndex))
+ var rightCost = calculateCostFor(genStateRightOf(state, cell, cellIndex))
+ lowestCost = Math.min(lowestCost, costOfNextRemoval + leftCost + rightCost)
+ }
+ return lowestCost
+ }
+}
+
+class MemoizedSolver extends Solver {
+ var _cache : Map<State, Integer> = {}
+
+ override function calculateCostFor(state : State) : int {
+ if (state._cells.Empty) {
+ return 0
+ }
+ if (_cache.containsKey(state)) {
+ return _cache.get(state)
+ }
+ var result = super.calculateCostFor(state)
+ _cache.put(state, result)
+ return result
+ }
+}
+
+function solve(numCells : int, cellsToRelease : List<Integer>) : String {
+ cellsToRelease = ImmutableList.copyOf(cellsToRelease.sort())
+ var state = new State(){ :_first = 0, :_last = numCells+1, :_cells = cellsToRelease}
+ var solver = new MemoizedSolver()
+ var result = solver.calculateCostFor(state)
+ return "${result}"
+}
+
+
+function solveAll(input : Reader, output : Writer) {
+ var reader = new BufferedReader(input)
+ var writer = new BufferedWriter(output)
+ for (i in 1..reader.readLine().toInt()) {
+ var numCells = reader.readLine().split(" ").map( \ item -> item.toInt() )[0]
+ var cellsToRelease = reader.readLine().split(" ")
+ .map( \ item -> item.toInt() ).toList()
+ print("Solving case #${i}: ${numCells}, ${cellsToRelease}")
+ writer.write("Case #${i}: ${solve(numCells, cellsToRelease)}\n")
+ }
+ writer.flush()
+ writer.close()
+}
+
+var sampleInput = {
+ "2",
+ "8 1",
+ "3",
+ "20 3",
+ "3 6 14",
+ ""
+}.join("\n")
+
+
+//solveAll(new StringReader(sampleInput), new OutputStreamWriter(System.out))
+solveAll(new FileReader("C-small-practice.in"), new FileWriter("C-small-practice.out"))
+solveAll(new FileReader("C-large-practice.in"), new FileWriter("C-large-practice.out"))
Please sign in to comment.
Something went wrong with that request. Please try again.