From ee63647b0a8eb2cdcc0503a2f2b683342f5666b4 Mon Sep 17 00:00:00 2001 From: jolheiser Date: Thu, 1 Dec 2022 16:56:19 -0600 Subject: [PATCH] nu Signed-off-by: jolheiser --- input/day1.txt | 2243 ++++++++++++++++++++++++++++++++++++++++++++++++ src/day1.nu | 7 + 2 files changed, 2250 insertions(+) create mode 100644 input/day1.txt create mode 100644 src/day1.nu diff --git a/input/day1.txt b/input/day1.txt new file mode 100644 index 0000000..43f433f --- /dev/null +++ b/input/day1.txt @@ -0,0 +1,2243 @@ +3427 +3273 +5615 +5943 +3125 +4245 +4194 +3243 +4283 +1790 +5355 +4239 +5541 + +3850 +5294 +5393 +2490 +3231 +2743 +2016 +2418 +2304 +5673 +3035 +5292 +2112 +2630 +2305 + +2325 +2002 +3402 +4756 +1662 +1133 +5273 +6397 +2977 +4011 +3594 +4441 +3907 +1503 + +7598 +6971 +6979 +3873 +1394 +8399 +1321 +2304 +2570 +6679 + +15324 +3365 +23808 + +5489 +3526 +3125 +8371 +1928 +8191 +7267 +10728 + +5243 +2203 +7331 +8049 +4951 +3743 +2255 +4112 +3077 +2441 +4678 + +12353 +2251 +12157 +13656 +10655 +7525 + +3383 +4183 +3293 +5473 +4898 +1441 +3786 +4002 +2179 +2439 +5530 +3966 +6273 +3150 + +3320 +2694 +2229 +1394 +4568 +3160 +4986 +2487 +3412 +1030 +3717 +1460 +1140 +1314 +5816 + +15303 +36095 + +14345 +5208 +2253 +19532 + +5082 +6544 +3563 +6050 +3750 +1155 +2090 +3661 +3600 +5528 +6506 +1795 +4901 + +1156 +1867 +2025 +5434 +1546 +6052 +4412 +7203 +4622 +7098 +4727 + +4423 +1829 +4761 +4779 +3234 +4869 +3567 +6928 +4181 +5390 +5938 + +3100 +6087 +9235 +10228 +2082 +5472 +11382 + +8389 +15131 +12057 +5034 +9419 + +2192 +1695 +3233 +2245 +4328 +6275 +1811 +4345 +2760 +3205 +1138 +2795 +3876 +1041 + +1302 +3509 +6074 +1793 +5808 +5364 +3802 +2048 +6042 +4913 +5983 +1189 +3134 +3763 +2573 + +1003 +8411 +2571 +2555 +7555 +8096 +1441 +5600 +5104 +6311 + +5345 +3329 +5616 +3250 +4321 +2068 +1978 +3719 +4512 +5099 +4694 +1566 +2621 +1613 + +11021 +6101 +9858 +3142 +9907 +1578 +8582 + +3182 +7695 +4419 +4036 +5846 +3899 +6104 +4495 +7382 +3471 + +6844 +3290 +10505 +7855 +1494 +5963 + +3609 +4755 +4063 +1480 +3201 +4576 +1627 +1255 +3699 +3929 +5533 +4807 +5890 +2270 + +3789 +7045 +8784 +8006 +4583 +7726 +3993 +1472 +1578 +2046 + +2474 +5953 +2050 +4758 +5265 +5075 +4338 +1340 +1301 +5996 +1225 +1794 +4778 +1354 +3819 + +9619 +10877 +8094 +8845 +11275 + +1986 +2142 +7561 +5350 +7605 +6766 +4713 +1016 +5697 +3179 +1696 + +3428 +5575 +5301 +4356 +5065 +2010 +1382 +3466 +3233 +1188 +1999 +3228 +6153 +4496 + +1354 +5681 +11066 +1211 +8399 +12040 +11181 + +3408 +1237 +2163 +5645 +4712 +1349 +4124 +2357 +5443 +4887 +5582 +3037 +3764 +3472 +5861 + +16746 +19715 + +18742 +18810 +6457 +8003 + +3720 +2473 +3156 +3758 +2095 +1872 +1767 +3754 +5011 +3188 +2691 +3555 +4826 +2148 +2012 + +8200 +5372 +6960 +5423 +2383 +2252 +6375 +3558 +1643 + +4653 +3017 +1840 +4479 +6043 +4533 +5374 +5708 +5026 +2557 +2984 +2175 +3797 +1367 +2809 + +1439 +2943 +2091 +6539 +5602 +8757 +2165 +2013 +8140 +4465 + +1216 +3681 +6650 +3628 +5812 +1127 +3023 +4629 +6060 +3294 +4414 +6013 +3311 + +5454 +10288 +4812 +7823 +10332 +2413 +1891 + +46279 + +9578 +8113 +19699 +10360 + +1604 +6410 +6017 +7080 +6023 +3892 +5152 +5250 +2799 +3333 +3451 +3430 + +9888 +6658 +4837 +9174 +9517 +1927 +4135 +4802 + +10514 +1492 +1142 +10574 +7578 +6753 +4250 +7526 + +4997 +6345 +5735 +2312 +5652 +6281 +1808 +5840 +6222 +4264 +6164 +3923 +2953 +4549 + +1751 +7956 +7499 +4659 +3770 +3266 +3921 +2854 + +1750 +6872 +3010 +7148 +1621 +3709 +3454 +5347 +7743 +1274 + +4212 +7252 +9341 +1973 +11385 +5895 +2077 + +6658 +1338 +4893 +2578 +9604 +2595 +3414 +1080 +6270 + +24007 +4451 + +12972 +11908 +9381 +1048 +7389 +8138 + +2266 +2599 +4165 +4784 +4626 +4361 +3710 +2182 +3845 +4487 +2023 +2986 +1893 +5845 +5497 + +6805 +5697 +1281 +6524 +2711 +2519 +2117 +4087 +5690 +4330 +1135 +4761 + +5844 +3385 +1138 +1569 +1517 +1556 +9548 +5483 +3219 + +4644 +2601 +5562 +3819 +1254 +5815 +5846 +5382 +3150 +4171 +5534 +6094 +4472 +2061 +4076 + +2878 +1410 +9640 +5071 +3324 +8293 +9940 +3408 + +17130 +10210 +10359 +4906 + +2544 +5660 +6090 +3828 +7403 +2801 +8923 +5277 +8099 + +3795 +1966 +4800 +3767 +4208 +3259 +8457 +4220 +8519 + +1605 +10471 + +5185 +4592 +4389 +3287 +2304 +1856 +4737 +2879 +6366 +6552 +3801 +4487 +3732 + +6012 +5767 +6959 +8554 +8079 +8259 +4657 +5856 + +14046 +3590 +12095 + +2973 +3878 +3645 +4276 +2320 +2886 +5517 +6727 +5742 +1098 +3216 +2442 +3818 + +1273 +4150 +3080 +3346 +2788 +1989 +3112 +4219 +3596 +3513 +4205 +6202 +4782 +2784 + +5051 +2764 +3741 +6410 +1016 +7444 +2184 +3062 +5225 +1274 +6015 +1728 + +2377 +8151 +5516 +5535 +4053 +5950 +10235 + +7837 +2220 +5837 +12251 +16188 + +4297 +16215 + +1978 +1710 +1777 +4212 +6858 +3883 +6775 +2192 +1175 +5995 +1271 +2740 +2628 + +4320 +4494 +5177 +1999 +5490 +1489 +4324 +5227 +1450 +5883 +2319 +4774 +4458 +2351 + +3448 +6913 +8451 +6462 +5866 +11217 +2186 + +4201 +4589 +7100 +4364 +7012 +2153 +7302 +5890 +1686 +6211 +3490 + +15256 +11330 +2576 +16295 +12696 + +3284 +8133 +4210 +9105 +7168 +6026 + +11776 +6637 + +4573 +6043 +1000 +6736 +4118 +5208 +2927 +7477 +5529 +4854 +3522 + +5080 +8530 +6703 +6196 +9315 +5603 +7705 +4264 +4226 + +2260 +9738 +5010 +1686 +1937 +8207 + +25668 +27349 + +2869 +4713 +4882 +2679 +7961 +3163 +5782 +6503 +4208 +2063 + +6247 +4463 +2240 +7150 +2727 +7441 +3721 +7962 +2128 +4317 +1091 + +4963 +1111 +5113 +3820 +3030 +2167 +2925 +1805 +1441 +6450 +1386 +2862 +1594 + +7176 +12022 +1849 +4085 +4515 +10053 +11249 + +18317 +1781 +18494 + +4370 +19502 +2229 +19624 + +3242 +16141 +5070 +19552 + +4082 +7003 +9394 +4500 +9162 +1991 +3555 +4769 + +3386 +5867 +8192 +6543 +1930 +10974 +1136 + +1004 +7929 +9658 +7020 +7231 +9331 +1749 +2973 +6859 + +6997 +1865 +4744 +5725 +8391 +8664 +1142 + +19299 +3449 +16386 +13658 + +1825 +1988 +5454 +6369 +7466 +4535 +5033 +2624 +4671 +1715 +1130 +2785 + +6349 +3298 +15373 +3765 +8607 + +1467 +1151 +5692 +5349 +5878 +2378 +1060 +3500 +3794 +5979 +2498 +5792 +1346 +3951 +3002 + +6298 +7169 +2292 +5334 +3964 +1367 +4002 +5096 +2232 +2396 +2399 +3622 + +4478 +13270 +6750 +14796 +2444 + +28084 +22563 + +10371 +10158 +8358 +8893 +2048 +10170 +1975 +5860 + +2826 +5313 +6768 +5757 +5251 +7693 +2295 +3278 +4889 +6677 +2869 + +4648 +4125 +5271 +2075 +5706 +6365 +2815 +6123 +3621 +2536 +5841 +2819 +3421 + +19400 +15923 +4719 +19889 + +15442 +24965 +20121 + +12765 +6225 +9594 +3324 +10745 + +9550 + +3573 +6393 +7665 +8995 +4214 +7717 +1278 + +8653 +5104 +3346 +4537 +1870 +8001 +2938 +4618 +6738 +2912 + +3315 +1537 +10677 +9986 +6898 +9306 +7037 +1489 + +6055 +5329 +1855 +2859 +6953 +2772 +5646 +4659 +1638 +4294 +2050 +5063 + +66765 + +3712 +3030 +8171 +2898 +8367 +10670 +4897 + +5012 +5099 +4827 +3947 +6708 +1704 +3714 +2225 +4425 +2528 +2396 +1261 + +5626 +2971 +12919 +16816 + +4547 +12905 +11292 +18931 + +3530 +9875 +4672 +3897 +8547 +3293 +4835 + +43142 + +24258 +9997 +21496 + +1208 +5598 +1340 +3351 +3856 +4368 +2935 +5296 +3972 +3060 +2599 +1795 +5210 +5403 +3473 + +4457 +3498 +3815 +1380 +2356 +3167 +5418 +5314 +1344 +1837 +4187 +2184 +5629 +4746 +1087 + +21757 +8610 +4689 + +11777 +5837 + +12118 +5293 +13465 +8537 +7762 +3782 + +6183 +15013 +7399 +14944 +6213 + +43907 + +8307 +5251 +3694 +4573 +2578 +3687 +3885 +1965 +6973 +6266 + +27104 + +1946 +3232 +2101 +9268 +9634 +4100 +1878 +9129 +4192 + +9175 +11691 +4274 +8684 +8889 +4557 +7587 + +4279 +8296 +4685 +2930 +8289 +6175 +4472 +2901 +2936 +7176 + +11323 +9385 +11725 +9793 +8426 +6393 +6004 + +3672 +4161 +3337 +1929 +3171 +2371 +3786 +7876 +4149 +4925 +4705 + +28965 +32051 + +2398 +1799 +5037 +4165 +2010 +1355 +1575 +5139 +6084 +4016 +5215 +6103 +3298 +4534 +4615 + +6660 +7961 +8168 +3330 +6912 +6116 +7870 +9037 +1571 + +6421 +3027 +5685 +3979 +2831 +5353 +2478 +1044 +6811 +7667 +2964 + +3919 +10974 +2860 +4617 +10693 + +5548 +5360 +1319 +5437 +1422 +3565 +4957 +4813 +1684 +3627 +3082 +3486 +6118 +1841 +4263 + +1874 +4344 +6124 +11147 + +6594 +6216 +7338 +3533 +6738 +3045 +1244 +6486 +3200 +2511 + +1139 +21415 +25857 + +16318 +1430 +3369 +9263 +9929 + +5928 +15789 +11887 +12028 +8417 + +6149 +1642 +2773 +4464 +2136 +3018 +3822 +3430 +1317 +7242 +3908 +4536 + +1425 +5550 +4635 +2039 +1290 +2618 +3862 +2107 +4921 +2991 +2703 +1932 +2568 +2266 +5553 + +5660 +8736 +4457 +5190 +1149 +9538 +8720 +6090 +3093 + +13268 +25486 +19311 + +2275 +5258 +6428 +2407 +3893 +1339 +6016 +5075 +3342 +1951 +3939 +5464 +2310 +2111 + +9213 +4141 +13988 + +20253 +20757 +12387 + +6720 +9453 +11786 +5246 +8519 +1807 +4846 + +11442 +6565 +3556 +4281 +13793 + +11152 +7384 +3135 +7831 +9622 +2549 + +1687 +3983 +4666 +5010 +7569 +8614 +3537 +5490 +5002 +5659 + +5692 +2560 +6875 +3031 +3324 +5731 +6464 +9583 +3505 + +1814 +1393 +3673 +5469 +6392 +1052 +2787 +5115 +2666 +2590 +6565 +1842 +2506 + +5592 +3509 +5060 +4589 +2619 +3283 +4145 +1590 +6079 +1312 +5693 +5182 +5071 +5476 +2187 + +5848 +11351 +8303 +11454 +7250 +9222 +9673 + +1348 +4372 +5362 +4031 +3730 +4094 +5193 +1949 +3386 +1840 +1414 +2665 +5000 +1427 +2756 + +5415 +4977 +4836 +5095 +4250 +4958 +5446 +1788 +3187 +2285 +5023 +4540 +6505 +6193 + +9926 +5929 +10070 +9154 +15694 + +5424 +2275 +2556 +7747 +8450 +2304 +8512 +5397 +3831 + +5193 +2733 +5044 +6255 +9617 +7568 +2363 +7297 +8281 + +3912 +8171 +5412 +6963 +2854 +5319 +5093 +3672 +7422 +8003 + +1986 +3826 +3202 +3431 +1361 +1949 +2237 +6455 +7354 +2587 +6648 +5011 + +26126 +35104 + +2811 +3929 +2049 +6213 +6242 +6074 +5336 +1684 +2556 +4831 +2963 +3482 +4728 +3548 + +5652 +5134 +5168 +3953 +7858 +2654 +6512 +2084 +4173 +5224 +3278 + +3599 +5356 +1114 +4191 +4473 +5066 +5490 +3564 +5826 +1516 +4392 +5289 +1281 +4404 +2274 + +58222 + +2493 +5894 +3528 +6543 +6011 +5090 +3001 +3783 +5710 +3351 +3936 + +4894 +2255 +1579 +3849 +1090 +4218 +4196 +3818 +3701 +6652 +6393 +5254 +3891 + +1041 +6701 +8442 +4691 +1054 +9791 + +63207 + +4085 +3685 +3858 +6123 +2192 +7228 +2276 +4588 +2134 +5990 + +1857 +18111 +17100 +12276 + +2353 +5464 +5442 +5230 +4412 +3189 +5513 +5813 +2459 +4570 +3493 +1753 +2059 +5804 +2150 + +9941 +13582 +3983 +5035 +7121 +8255 + +6637 +2409 +5469 +2433 +6675 +5290 +4965 +2161 +4358 +2845 +3302 + +3888 +1312 +7084 +4568 +14787 + +16704 +17915 +12348 +10556 + +3055 +2579 +3744 +3287 +5974 +4817 +2966 +5913 +3291 +2043 +4534 +1323 +5913 +2638 +4941 + +6305 +4244 +10277 +6254 +13667 +4572 + +1538 +13957 +13223 + +5856 +1394 +1329 +1395 +5874 +1899 +1884 +6484 +2784 +4268 +1631 +1822 +2463 +3880 + +14105 +14883 +18198 + +3032 +3784 +5643 +3773 +5888 +1178 +3793 +5230 +4118 +2181 +4977 +5507 +2111 +2718 + +2275 +5842 +1675 +6194 +5207 +1151 +3795 +1214 +1684 +2885 +4067 +3938 +4495 +4713 + +8752 +7608 +9819 +10438 +8672 +9792 +3246 +10448 + +1844 +14438 +13886 +14646 +2801 + +4032 +2553 +2327 +2321 +5334 +4677 +5466 +5474 +5194 +2828 +6113 +2979 +4755 +5295 + +3164 +4556 +7645 +2198 +2053 +1154 +1976 +1231 +4290 +4049 +5697 + +3635 +1307 +2316 +5508 +6603 +5483 +6365 +4073 +1325 +4043 +1807 +1871 +2056 + +6233 +5552 +8415 +2110 +8085 +9293 +6374 +6406 +5730 + +5077 +6068 +9548 +6279 +1000 +3764 +3649 +4720 +3278 + +5222 +1356 +4185 +2401 +1947 +4042 +5903 +4500 +3817 +6871 +4859 +5715 +4061 + +15888 +8533 +18355 + +65924 + +9638 +2232 +5209 + +14127 +21496 +6679 + +4269 +5055 +5129 +3308 +6977 +5175 +8822 +2381 + +57210 + +5510 +1878 +3933 +4081 +5101 +3974 +2211 +2310 +4652 +3113 +3414 +3844 +1637 +3225 +5057 + +12780 +11976 +6407 +3161 +11266 +7404 + +5178 +3541 +3449 +2443 +3099 +5232 +5838 +1724 +5830 +1147 +2092 +5034 +1235 +2502 +5532 + +12966 +12188 +2554 +13972 + +6587 +3279 +1462 +1804 +1398 +1172 +7309 +7422 +6432 +1024 +3065 +4228 + +2694 +7331 +14584 +9982 + +7038 +6957 +4701 +7704 +2598 +5320 +5967 +6921 +1647 + +3296 +2784 +5532 +5546 +5876 +5368 +1054 +5058 +4827 +1357 +6359 +6830 + +4292 +3508 +2337 +4779 +6114 +4836 +5981 +3416 +6699 +3472 +5791 +3957 +6943 + +3478 +4225 +3052 +4254 +3454 +4037 +1586 +5076 +2839 +1992 +4261 +3288 +1343 +2341 +1551 + +17502 +4858 +18898 +5672 + +8686 +2583 +1331 +3358 +6292 +2778 +5709 +1961 +6840 +4022 + +2762 +7622 +7131 +7486 +11995 +10403 +7014 + +3729 +7653 +2913 +4205 +5248 +6521 +5522 +2238 +6185 +6906 +6982 + +13279 +15590 +6519 +5881 +10256 + +11856 +7565 +1021 +2750 +4574 + +6775 +1059 +1006 +4734 +8301 +10502 +4313 + +1474 +3139 +3822 +5821 +3711 +3319 +5126 +3229 +2014 +3850 +2412 +2025 +5909 +1183 +1785 + +2726 +6526 +6606 +6153 +7205 +1503 +5204 +6244 +5856 +3962 +2148 +4222 + +4715 +1689 +4771 +2137 +3780 +1441 +5840 +1161 +5664 +4784 +2380 +1710 +1514 +1631 +1383 + +17682 +10199 + +11639 +6724 +3935 +2520 +2078 +1975 +8774 + +2252 +1541 +5525 +3020 +5282 +4457 +5951 +6672 +7622 +4374 +6671 + +5651 +2720 +1633 +2704 +5113 +1968 +2943 +1763 +4803 +3768 +2712 +1141 +6006 +4546 +4336 + +9165 +8307 +1687 +4532 +4194 +4442 +6385 +5555 + +3820 +4280 +1133 +3789 +5471 +1788 +1694 +5654 +4802 +4218 +2428 +2933 +2219 +3567 +1743 + +2881 +4847 +1363 +5396 +1564 +5633 +4521 +3209 +2555 +5482 +2613 +4118 +5167 +3873 +2554 + +7668 +5845 +11661 +6560 +2189 +5230 +1923 + +29880 +25227 + +4503 +2215 +4600 +8892 +3104 +1325 +2103 +8983 +4061 + +4784 +9543 +16484 +18339 + +1331 +1544 +1291 +3863 +1005 +2002 +2907 +3014 +5819 +1397 +5856 +2182 +6055 +4812 +4226 + +5402 +3893 +4333 +4381 +5053 +3248 +1537 +3147 +2459 +3383 +2214 +5900 +5862 +2002 +1870 diff --git a/src/day1.nu b/src/day1.nu new file mode 100644 index 0000000..4b715f1 --- /dev/null +++ b/src/day1.nu @@ -0,0 +1,7 @@ +let input = (open ../input/day1.txt | lines) +let inputs = ($input | split list "" | each { |it| $it | into int }) +let sums = ($inputs | each { |it| $it | math sum }) + +let ordered = ($sums | sort | reverse) +$ordered | first 1 +$ordered | first 3 | math sum