瀏覽代碼

Solved for sample, not for input

Piotr Czajkowski 2 周之前
父節點
當前提交
e824f613fd
共有 2 個文件被更改,包括 881 次插入1 次删除
  1. 31 1
      07/code.go
  2. 850 0
      07/input

+ 31 - 1
07/code.go

@@ -52,6 +52,36 @@ func readInput(file *os.File) []Equation {
 	return equations
 }
 
+func check(equation Equation, index, result int) bool {
+	if index >= len(equation.numbers) {
+		if result == equation.result {
+			return true
+		}
+
+		return false
+	}
+
+	resultAdd := check(equation, index+1, result+equation.numbers[index])
+	resultMul := check(equation, index+1, result*equation.numbers[index])
+
+	if resultAdd {
+		return resultAdd
+	}
+
+	return resultMul
+}
+
+func part1(equations []Equation) int {
+	var result int
+	for _, equation := range equations {
+		if check(equation, 0, 1) {
+			result += equation.result
+		}
+	}
+
+	return result
+}
+
 func main() {
 	if len(os.Args) < 2 {
 		log.Fatal("You need to specify a file!")
@@ -64,5 +94,5 @@ func main() {
 	}
 
 	equations := readInput(file)
-	fmt.Println(equations)
+	fmt.Println("Part1:", part1(equations))
 }

+ 850 - 0
07/input

@@ -0,0 +1,850 @@
+426048: 425 608 69 88 1 282
+1234: 8 53 21 2 611 1 538
+3493064: 42 823 101 932 966
+7851123: 81 52 937 7 9
+109137611815: 9 4 9 1 9 5 13 97 18 1 4
+143516213: 2 906 6 5 12 22 578 3 3
+629453: 7 492 3 28 6 6 9 104
+5423661: 5 2 8 8 91 4 6 7 3 40 8 6
+18682395: 93 37 3 1 431 765 2
+556488358421: 794 98 33 6 917 7
+14604120: 89 13 65 703 17
+51347: 24 9 908 8 9 3 6 36 41 6
+1200264: 1 324 69 614 9 34 52
+84467: 99 1 694 50 64
+832680: 3 58 68 45 3
+13238: 4 3 58 9 652
+1505251: 3 24 97 1 29 669 5
+28869324: 99 749 1 46 74
+125890: 6 894 7 6 87 9 2
+265251: 8 9 8 87 251
+928664914: 4 7 6 8 664 8 2 9 1
+103228624: 7 2 73 7 94 91 95 26
+5765376: 442 85 4 41 8 742 8 4 8
+101551004: 2 78 991 38 75 8 4
+11531: 4 42 589 122 1
+230639: 88 6 3 722 3 9 1
+533796498: 66 80 3 2 101 4 5 2 501
+8494148: 32 35 79 2 8 3 30 2 8
+222246692: 23 41 13 94 970 689
+9841934: 2 998 419 815 5 809
+2186556: 51 9 9 660 4 2 9 8 69 7 3
+11207789126: 1 9 425 1 68 5 9 2 293 9
+33355203: 7 199 5 84 119 57
+60424: 989 61 79 8 8
+651253: 3 4 904 8 2 8 72 87 493
+2099106644: 277 842 9 624 22
+29145931: 3 6 15 3 7 9 70 6 1 1 6 5
+63140: 8 79 61 77 82
+720845730: 9 3 43 1 53 45 650 81
+3030: 45 57 85 280 5 94
+64316066: 7 6 7 422 14 953 37 4 2
+31898201: 77 74 3 622 3 797
+99024982725: 48 77 1 3 47 8 1 30 846
+3086415: 5 139 1 6 1 8 2 24 2 3 6 9
+1604915280: 2 7 652 74 321 7 18 4
+1040: 316 22 7 3 4
+792201: 748 7 22 488 99 493 4
+1449102: 23 525 6 4 4 5 82
+6672: 8 1 563 7 9 593 863 1 4
+641235: 18 5 76 3 87 8 8 93 15
+836: 399 2 31 7
+2589888404878: 4 8 94 21 41 40 4 8 77
+79158297957: 221 570 58 29 795 6
+94656: 64 547 254 223 87
+158670130: 2 9 3 4 32 2 645 2 6 5
+1172900: 5 624 9 5 3 69 38
+18570144924: 6 3 570 144 926
+11809188: 63 26 801 77 7 9 90
+17569711116: 9 9 2 2 156 793 3 109 4
+72864: 8 2 3 1 5 3 99 8 4 72
+30090677155977: 38 89 11 5 217 41 9 79
+54186: 5 418 6
+536456640: 1 53 273 27 3 1 35 52
+1324: 568 47 2 45 5 2 40
+255466537: 98 49 133 4 82 56
+108593: 440 931 5 635 54
+274562: 18 4 88 12 3
+2310: 168 125 6 551 1
+158226796: 4 2 1 71 56 18 67
+227860: 632 36 2 68 5
+254276307: 211 927 13 62 57 90
+969151: 96 75 1 79 6 608 1 856
+1381920960: 329 7 7 6 4 3 5 51 5 4 3 8
+57750433: 466 22 1 43 6 1 131
+2039463: 8 532 4 2 2 4 3 59 245 1
+924: 4 2 42 57 2 23
+984: 9 5 1 3 4
+3490: 32 9 8 5 7 7 18
+764789: 47 91 3 83 341 2 942 4
+8761312983: 1 5 1 645 2 56 981
+49375245: 46 16 94 4 67
+1371731088: 258 80 58 98 119 1 6
+1691074: 3 653 36 8 2 4 61 153
+237984: 3 60 942 4 84 514
+8487: 3 836 6 3 7
+1302665: 8 327 850 4 8 848 637
+338504789434: 9 7 96 4 27 58 1 7 7 431
+4375: 5 320 13 87 62
+39114592: 24 74 32 3 53 53 8 58 9
+55211: 1 2 5 261 3 6 6 3 873 6 5
+3930310: 6 727 89 883 77
+105416741: 8 6 2 7 830 2 7 81 29 72
+1864306: 752 37 67 22 76
+10308245: 460 6 22 56 243
+8724688: 61 143 1 688
+802716549428: 81 991 6 5 494 30
+4542460: 5 11 52 818 924
+3187936924: 8 9 54 879 356
+63545: 1 459 7 429 71
+117919: 9 76 202 28 91 1
+3743973: 74 82 5 41 5 269
+861952: 57 558 68 7 2
+3334911: 668 16 39 8 255
+66798536: 27 9 931 6 92 65 3 3
+8653262: 4 82 5 326 2
+658062508: 5 97 94 2 5 6 9 3 55 6 7
+22128516: 111 222 898
+1200278: 40 5 6 269 1 8
+8492254: 465 206 452 28 74 6
+3976640: 97 49 2 8 340
+6598260668: 7 20 3 459 9 9 9 66 8
+349711968: 699 417 1 4 1 9 50 4 4 8
+4360998090: 46 474 98 40 5 9 586 2
+38968452095: 4 8 59 12 7 172 6 592
+7435934408: 521 8 34 8 32 2 2 2 7 79
+3601746: 772 4 711 1 61 7
+1037835487: 2 33 58 143 836 7
+5238563720270: 5 238 5 5 4 9 720 27 2 5
+73195290: 1 5 3 442 4 46 2 7 74 9
+39219: 7 612 3 676 2 9 5 58 3 3
+171333389699: 63 45 681 1 9 868 3 96
+5938: 5 554 315 59 8
+26921: 93 28 3 36 843
+462492: 370 38 563 73 443
+372492502: 9 1 521 5 407
+252499564: 6 1 676 72 5 91 736 44
+9089304: 8 405 786 1 28
+22290929687: 18 8 255 512 849
+496884960: 62 9 691 5 3 52 2 418 1
+52469758: 7 21 96 244 80
+1915494: 72 667 81 32 1 5
+9240: 10 4 9 8 48 21
+1229174: 39 965 1 6 16 2 676 73
+63520233: 629 6 20 20 2 31
+40053664: 520 36 298 72 207
+31513519: 5 63 13 52 1
+73259497328: 105 380 5 4 81 92 2 82
+380149: 5 2 9 59 84 52
+3532752: 75 6 40 8 7 9 1 4 7 7 48
+735865836: 2 63 65 3 220 42 58
+1036899: 1 972 63 89 6
+119723575: 885 89 2 8 95 775
+3394585738: 1 14 571 49 3 218 264
+43184: 9 47 91 47 18 728
+49179361: 3 2 358 1 27 7 8 5 1 35 1
+60589: 51 9 55 8 31
+3853: 376 9 454 6 9
+97218628: 727 238 7 1 5 3 562 67
+573: 3 18 8 47 306
+2673281: 37 17 850 5 31
+2519097323: 4 4 5 97 433 8 9 95 142
+6282472: 46 1 691 942 3 472
+1997842: 25 474 46 4 4
+21463827009: 6 23 2 74 68 7 1 540 5 6
+52876: 55 96 7 3 3
+5458: 97 56 11 8 8
+306: 4 93 5 1 3
+2246440404358: 35 2 97 944 68 53 358
+2156122429948: 627 6 8 625 3 796 3 1 9
+705471450: 257 448 47 1 450
+12086441200083: 60 4 322 5 3 8 5 5 20 86
+95185977895: 98 5 36 209 966
+66643: 1 3 7 1 6 43
+243331: 233 9 57 6 756
+12661228256: 590 33 4 6 7 5 4 774 8 4
+1100: 141 1 952 1 5
+10510801045: 69 2 2 9 86 5 9 1 76 28 3
+9888464534: 77 6 246 98 7 74 967 5
+361718875114: 2 97 4 725 12 1 5 186 6
+106512316: 40 7 2 8 449 818 536
+7588010: 64 694 772 1 291
+991: 23 4 7 1
+417: 6 45 7 75 65
+15920852: 55 93 8 8 3 3 5 8 5 7 8 9
+699: 4 8 55 43 589
+35097279829: 4 6 2 2 7 9 58 9 5 7 982 9
+108684: 5 6 2 62 283 1 6 4 9 2 1 6
+35276: 28 575 4 57 677
+8895075: 5 175 18 8 8 171
+40618: 7 219 38 7 558 54 46
+55909321: 4 4 4 6 3 2 41 705 8 3
+176390408: 496 6 61 6 8 3 64 5 2 5
+407788355: 40 778 7 603 3 747
+102608197: 81 5 348 5 7 26 1 4 237
+8020532: 9 9 9 1 969 8 4 5 8 884
+2581035: 66 5 388 83 7
+802185122: 561 993 4 360
+3277848705: 9 6 53 9 95 6 7 11 7 6
+134464957445: 1 493 1 9 495 74 44
+229748861160: 67 46 3 205 234 518
+2940111322: 37 12 917 589 22
+18670960793: 9 6 5 3 9 8 261 3 1 46 4
+1142150721: 5 16 55 5 212 5 5 2 18 3
+22196443505: 815 786 45 77 4 1
+573211: 2 377 7 24 18 9
+4843: 3 6 9 44 4 82 8
+302249666485: 3 194 57 134 54 717
+662063: 5 3 2 1 624
+132572: 6 8 36 82 57 2
+3864582: 2 3 24 7 582
+1690: 102 691 4 128 765
+1209: 19 8 7 7 96
+126089845: 7 5 8 5 98 736 3 7 9 1 7 6
+46487320: 7 1 664 7 249 71
+39486: 46 405 1 87 160
+2736552: 3 28 8 83 7 28 537
+2172301065: 63 91 618 3 55
+523522: 93 1 67 362 522
+986428764: 985 978 446 4 722 43
+12315880: 9 29 96 8 470
+3984391: 39 843 92
+5689708: 5 4 5 7 7 576 6 157 6 19
+64505661: 64 1 505 397 262
+227515138: 227 5 1 513 5
+215361445: 3 83 63 820 93 86 2 46
+34003007060: 651 993 2 526 60
+16267: 920 7 1 2 834 6 58 69
+267374268991: 6 89 73 9 8 826 8 71 59
+112166154: 10 2 93 5 66 155
+135: 9 1 5 42 43
+11248: 70 1 423 8
+2911500: 7 1 379 10 647
+65618: 984 65 686 971 1
+1423917: 23 24 26 9 18 1 3 99
+1436633024645: 2 84 134 9 2 9 9 8 79 8 2
+280912: 935 3 3 62 52
+102593598: 442 2 326 89 3 4 1 7 75
+38611: 3 9 503 9 6 7
+36060: 5 8 1 16 4 601
+28487: 73 691 6 37
+721930973: 72 18 830 479 70
+36324778803: 800 100 3 2 26 454
+70492231245: 571 990 211 5 591
+801607886: 2 79 33 888 80 7 886
+15442400: 28 69 999 3 72 157 8
+354682: 8 40 1 3 5 5 4 8 3 18 9 1
+11718044: 9 180 31 20 43
+2292878: 7 56 82 229 425
+8686510: 37 390 2 64 1 9 291 4 3
+47239: 2 77 52 4 9 9
+23755253: 2 3 1 14 707 19 10 22 1
+20814560: 68 8 44 536 1 3 2 4 2 2
+431195040: 3 579 696 74 1
+29632103424: 32 66 6 7 6 62 898
+3417: 8 81 2 28 869
+10513496180: 211 3 56 7 2 6 7 135 47
+4575903869: 45 6 2 3 9 1 903 8 6 9
+481562: 2 15 946 50 5 9 3
+23919714428: 27 8 335 3 2 6 39 4 2 6
+7227024325: 393 870 603 211 22
+113705615: 16 7 76 94 561 4
+36627744: 31 879 122 467 76
+9682305217682: 3 1 3 8 5 9 739 1 1 835 1
+1883: 19 215 8 1 14
+310865765704: 4 5 93 47 8 3 6 8 5 703 4
+65640: 2 3 9 5 671 1 89 9 3 9 3
+34615688: 8 581 1 9 1 6 5 699 4 90
+2874960: 136 2 372 936 55
+125692: 11 4 89 28 2
+21607840833966: 9 9 950 1 75 96 871 39
+23335608: 45 75 54 7 51
+6234: 20 18 819 73 6 654
+250181: 92 8 4 338 50 7 4
+38566354: 9 7 120 611 37
+62704469: 2 8 9 71 5 66 44 5 6 10
+385850: 5 8 8 7 2 8 63 6 3 678 3 2
+115032285: 8 150 96 7 913 15 21
+24871: 8 3 270 600 1
+77113465: 7 555 723 1 6 7 465
+6231: 5 8 5 956 5
+388: 4 291 1 18 4 72
+63870451184: 1 1 3 2 911 508 8 293
+961: 5 9 1 8 4 9 87 5 10 5 26 1
+651002: 2 861 685 2 84 5 2
+2999: 9 328 41 3 3
+697540864632: 38 79 4 2 726 8 4 316 2
+13399549: 3 1 11 73 8 59
+3562090: 866 1 6 83 674
+7828907: 74 2 706 87 2 10
+2386854: 1 2 6 68 78 5 2 4 3 5 5 4
+81760686: 706 5 7 1 6 6 2 7 2 19 87
+214797: 8 9 3 421 8 1 3 4 1 9 42 9
+54427336: 30 712 8 173 53 79 73
+1053341344949: 65 569 3 712 238 4
+1448736525566: 160 97 9 6 4 6 8 57 563
+2123419597390: 606 83 8 9 9 6 6 9 7 393
+123978240: 336 8 4 9 4 6 8 7 7 2 8 60
+35148535: 2 7 4 48 565 8 4 2 8 9 5 2
+204124802990: 9 630 13 340 36 7 583
+539960: 44 66 196 25 960
+37179596269: 5 9 63 806 153 6 267
+46944: 256 517 694 4 8
+164447918604: 3 3 5 68 2 239 59 3 20 1
+606512067: 202 5 85 25 2 1 7 4 6
+582: 6 82 4 78 1 8
+358489335615: 4 8 36 290 49 3 356 12
+37968920318: 619 787 27 6 9 203 1 8
+45917891663: 6 97 6 743 4 91 665
+56974260612: 681 192 73 598 894
+1433362936: 23 81 301 2 938
+13387282062: 71 5 209 7 382 7
+1440477: 3 9 37 3 66 4 2 667 58 9
+54297: 87 359 12 77 5 2 7
+45930136: 75 180 3 3 8 378 104 8
+15415060: 60 9 86 5 795 94 115
+152568: 9 1 61 5 68
+27460988: 2 74 60 488 501
+1057969: 284 4 4 93
+2426020: 856 7 13 202 2
+49096: 6 5 24 2 68
+9219: 345 9 3 85 8 23 15 5
+502450092967: 1 142 17 6 6 1 85 589
+252469069: 478 8 7 1 57 8 66 59
+24272: 1 8 8 7 4 752 9 6 1
+156972819: 21 9 858 968 3
+4435814457: 77 9 8 8 6 1 14 460
+7029: 57 3 5 6 971
+7053569543: 70 52 914 2 653 531 9
+19649102: 9 7 9 5 22 545 4 839 94
+267089242: 3 5 3 83 8 2 342 7 29 5 7
+93765: 40 945 53 957 47
+815253659: 48 97 581 700 8 52 7
+14381: 70 1 91 2 1
+6727770: 8 5 1 2 7 47 96 2 4 2 9 38
+488959: 12 7 770 5 7
+444850: 57 3 7 68 6 350
+359101435530: 819 36 14 3 143 553 2
+255298640: 5 7 2 336 9 6 25 6 226 8
+627971804: 91 69 71 723 81
+376876294: 603 625 5 15 779
+4870224: 8 32 3 2 68 8 93
+2921378615: 7 3 1 1 7 7 272 2 3 953 5
+25762: 22 3 475 1 288
+9334: 8 9 6 1 5 125 42 364
+61711944: 453 61 26 6 4 8 3
+31159097: 62 1 5 953 605 32 97
+1486721291: 178 87 68 96 9
+164195070864: 93 879 40 795 8 4 22
+209: 2 83 46
+448419: 16 657 642 341 4
+2213729487: 7 9 9 7 1 33 6 6 7 457 3 4
+826: 83 91 642 8 2
+69845916113: 4 6 87 39 6 1 6 62 78 77
+420247390: 7 8 70 5 9 6 6 33 1 9 6 53
+468391418: 1 5 4 363 885 7 3 9 6 3 8
+730151: 729 320 7 816 9
+6121517413: 707 9 6 6 4 4 6 43 6 9 3 4
+1331520: 8 304 44 288 95
+2651662: 24 755 9 34 1
+55557168: 45 8 7 13 6 49 716 8
+925030462: 453 992 2 8 8 64 4 2 3
+22929993: 6 1 9 403 8 6 7 9 677 9 8
+136079: 10 7 80 8 1
+4018560: 24 2 115 4 182
+155443251648: 1 89 7 9 6 2 2 819 48
+47311914088: 1 739 4 9 498 7 71 7 4
+12959675904: 7 558 529 98 1 84 64
+117075505: 4 651 2 693 2 63 6 89 7
+8663990338: 3 5 36 5 2 989 3 23 337
+38598654357: 8 78 6 7 3 2 5 1 9 1 343
+1066: 3 68 3 447 7
+9763884: 4 8 11 4 806
+2649: 710 3 76 94 1 3
+97022: 6 5 4 84 77 2
+4436743: 2 4 20 36 7 37 6
+10887: 8 1 931 930 26
+41289: 5 160 2 2 4
+64001920: 561 4 3 61 38
+4877046: 961 40 84 3 58
+94551: 942 3 5 3 1
+2348968: 234 86 3 6 8
+4829697944: 5 51 4 9 7 8 687 122 8
+1275687: 531 4 6 262 9 9
+866: 5 3 7 3 8
+62826: 1 6 1 1 6 2 634 84 491 7
+234421278: 586 4 2 12 81
+987: 5 81 3 31 864
+1512712546: 9 8 7 63 7 125 47
+81507: 1 4 800 69 38
+6885843415: 743 5 546 570 926
+28383880: 20 47 9 76 1 89 469
+8399: 73 86 242 8 877 994
+6734289681: 841 681 9 889
+2487534047373: 259 5 3 948 9 974 101
+11402873: 17 96 609 414 17 553
+18904325600: 55 21 735 4 325 600
+1335462451: 16 5 9 9 14 8 3 3 70 955
+70253: 2 115 30 9 2 38
+17112: 9 5 4 7 9 66 1 6 5 1 9 2
+240212907: 4 9 83 31 381 71 8 21 4
+1137902: 24 89 78 71 31
+17115001: 8 9 5 100 978 2
+8596391: 85 8 7 3 87 9 24 3 5 5 22
+536020: 80 67 17
+1999835: 8 241 881 8 790
+91503776: 1 6 419 4 5 7 7 2 6 8 91 7
+141043433: 470 5 59 6 4 796 1 2 3
+662831: 69 96 6 5 31 9
+2527482: 5 670 26 6 8 4 3 6 6 258
+663617436: 3 8 420 90 66 91 7
+5117396: 9 43 45 5 32 34 74
+286833458: 299 976 59 956
+1810904: 402 12 2 15 73 351 3
+14755500281: 339 44 1 161 3 3 2 1 3 2
+891738: 8 2 2 43 1 6 4 93 2 963
+1431924: 1 32 3 124 9 92 4
+18526: 572 3 33 7 71 27 4
+204101449: 650 314 9 5 50
+19637: 54 6 5 57 55
+46435032: 4 5 706 87 84
+3901884025: 21 5 80 167 377 335
+1357110633: 798 3 2 85 633
+368814453: 93 509 63 8 612
+16783688: 4 9 9 417 4 972 5 31 9
+12778007: 75 949 14 552 167
+3103890: 775 4 3 89 3
+746384: 52 14 91 74 5 8 305 9 8
+1324077: 1 132 24 2 1 6 674 967
+6907431: 203 9 3 7 2 6 3 6 30 4 3 3
+291241150: 142 5 2 5 909 5 500 86
+10416: 35 4 9 217
+222786114772: 428 3 36 98 836 1 52
+30956235: 5 263 130 3 193 37
+1807890624: 973 24 27 1 688
+70133160056: 822 711 9 1 4 2 6 5 5 5 7
+882460946: 1 8 8 6 3 1 3 2 5 943 2 3
+2371851: 8 27 50 5 890
+40024680321: 1 8 5 7 65 5 4 38 941 3 7
+487213: 29 9 661 697 9
+740743860807: 77 75 6 2 46 134 812
+17850: 20 9 9 26 83 5
+83290948: 5 91 8 75 2 927
+586005: 584 894 66 816 228
+483120417: 3 3 72 4 50 99 4 17
+21612195: 117 9 6 9 6 1 3 379 5 6 9
+1146285425: 70 5 863 1 945 427
+311680: 8 8 5 4 81 3 621 3 4 1 6 5
+81: 2 5 2 4 1
+1692432: 6 80 5 764 8 146
+982802: 73 73 2 8 4 3 8 5 3 5 7 2
+25409164560: 1 6 9 1 188 7 2 5 7 9 12 5
+366260: 318 47 47 1 78 7
+168240337: 5 944 11 6 9 9 4 3 5 2 67
+156807: 47 4 8 456 80 7
+14995745: 6 714 25 35 870
+24780095: 8 15 5 5 4 7 67 4 3 7 11
+104125: 557 482 2 22 2
+1844501: 41 2 9 357 7 202 32 5
+6275963892: 1 482 98 9 9 699 1 12 1
+3890574408: 176 78 786 6 28
+47467: 293 9 3 6 1
+926285: 9 2 532 96 5
+2209: 7 1 8 94 20 9
+219763712: 294 7 62 184 8 8
+1754288721: 344 99 440 155 814 9
+531930: 49 85 694 65 6 900 85
+1005239880: 1 733 9 94 6 997 2 4 60
+462: 33 9 26 131 8
+6132669: 9 52 546 4 6
+14541: 30 6 1 8 8
+49132039: 57 7 6 4 6 8 98 5 2 5 2 42
+10597759252: 40 7 3 622 8 10 9 7 7 6 9
+750879481848: 55 65 6 1 6 5 8 7 3 31 9 5
+301540320: 46 510 83 819 8 795
+25711201: 3 7 337 9 296 2 2 60 5 7
+3131219615335: 6 1 51 20 21 9 615 3 35
+190931: 6 6 9 7 836 2 1 7 6 1 552
+39873482: 1 61 950 90 687
+136495497599: 4 878 7 7 4 48 5 3 7 99 2
+62: 5 9 3
+4072901: 4 52 40 14 1 2 9 1 4 1 8 8
+3639889: 665 7 2 540 6 46 7 1
+44833: 8 910 6 472 1 8 3 672
+226176: 2 65 275 30 608
+100819083: 3 9 6 7 16 325 116 9 18
+2124636580913: 5 382 61 9 6 580 91 1
+18389: 71 5 6 4 6 2
+74957687: 7 2 7 8 5 9 5 59 9 636 6
+1935561104: 70 129 276 8 5 58 561
+285412: 39 26 7 961 98 2
+910425: 7 9 111 4 4 5 427
+1868263488: 7 973 1 56 654 52
+356: 9 9 7 64 4
+121563: 2 3 84 6 25 566
+11793880: 9 1 1 61 292 577
+6433920: 50 265 4 8 4
+757114712: 677 795 6 739 29 86 4
+92196314: 91 427 769 314
+3622: 9 5 32 3 9 8 9 20 65
+748249: 41 5 3 5 3 9 1 101 4 810
+57521100: 67 570 940 490 3
+694140: 42 712 4 1 92
+2584: 1 9 2 2 6 8 7 8 12 7 460 4
+1299844: 72 4 567 8 8 47
+4438062035: 7 710 541 133 8 1 996
+17848382: 733 639 949 13 44
+1285415254454: 377 73 415 786 82 3 2
+42573460: 1 8 2 3 317 730 79 381
+6487474065: 4 6 6 6 4 42 4 48 4 5 7 89
+11248830: 1 570 7 7 4 3 5 7 11 6 9 6
+1236900001: 24 10 720 625 57
+774935037: 293 473 63 40 66
+121832: 7 5 3 2 6 88 1 1 552 7 3 3
+1016743: 76 37 6 658 58
+2533368513: 61 4 55 636 596 21
+6990058: 4 1 835 30 204
+1847406607: 20 526 740 9 8
+779328000: 6 373 4 2 3 8 80 9 12 5 8
+96371: 3 5 88 208 156 7
+5419039: 3 8 517 90 41
+249830: 99 374 8 177 3 7 9 8 90
+100166088: 8 9 99 5 45 733 9 264
+3376144: 7 157 927 442 7 584 6
+43593660: 11 9 537 99 41
+411324689: 7 21 208 389 4 41 29 6
+234004: 61 323 7 87 89 62
+23183285: 23 18 26 6 88
+97916165533: 269 91 4 165 535
+1112448: 9 61 841 2 5 4 3 8 9 6 89
+8963: 896 5 1
+73558189852: 5 6 9 4 6 97 6 658 2 98 7
+13680414: 49 47 66 90 594
+24172014797: 48 336 8 5 1 479 7
+9967992824: 9 41 946 706 93 28 2 4
+76153297584: 47 81 66 2 975 84
+541346194846: 45 1 6 73 5 2 97 4 2 2 5 2
+2476666710: 2 630 15 208 17 630
+60279278: 6 982 17 61 6 3 845
+55027351: 4 528 9 2 88 135
+929699919: 3 89 480 9 8 2 99 5 4 21
+257203: 304 846 14 3 2
+19954464: 4 2 199 29 8 7 2 8 6 8 12
+349703121: 87 425 69 5 1 43 8 8 9
+9607739480: 120 8 1 4 3 7 3 6 3 4 74 3
+70229: 6 57 4 3 227
+19346675608: 4 3 7 4 3 7 466 3 5 5 609
+59456: 9 39 3 3 875 64
+4049373107: 490 831 2 825 85 1 7
+38708598: 9 8 89 40 412 1 7 18 2 5
+217787072132: 186 39 5 2 3 6 9 5 355 6
+1252444294: 382 309 78 42 9
+7796721302: 7 796 71 6 5 300
+232741316: 8 29 741 314 1
+26910444: 298 907 9 879 9 15
+40916974: 2 8 5 2 9 8 6 1 5 16 971
+34830687: 15 387 6 668 19
+49022893747: 778 140 1 17 7 4 9
+240774: 4 815 4 1 5
+2030: 4 95 11 46 895
+141432: 8 9 395 3 5 8 7 8 3 49 7 1
+466823: 1 32 544 26 71
+5847912: 202 47 694 82 7
+242621: 232 7 801 56 67
+330876: 8 4 2 2 2 2 7 150 5 18 7
+93687: 25 197 3 19 55
+71444393: 1 6 5 9 7 8 5 789 8 423 9
+6751035: 1 21 553 845 258 5 1
+191462315465: 957 31 2 3 15 464
+15511497: 55 8 2 94 73 289
+494852056149: 918 7 65 77 610 4 9
+116901382: 42 97 79 9 847 3 608 6
+287727946: 1 643 7 8 1 2 799 5 1 7
+26218340: 244 68 525 56 8 8 5 5 4
+76566: 9 77 13 60 6
+1830: 292 29 891 531 87
+403126: 356 9 148 58 706
+26406: 799 7 32 525 2 79 8
+61533769122: 1 551 8 75 6 983 189
+5083523328: 909 3 8 7 1 3 976 4 1 68
+35952796: 7 5 952 35 39 5 51
+167412767: 5 1 4 1 9 8 94 38 6 7 7 70
+2195302: 85 6 308 41 46
+1474198: 69 9 5 70 54
+364088987: 88 8 41 8 987
+78139858: 1 4 5 2 19 3 628 2 7 6 5 6
+4404409: 63 832 69
+78435: 7 47 2 61 5 16 7 21 5
+757520426: 77 2 98 98 26
+203318778: 4 281 991 7 5 62 31 8
+287102009: 8 88 930 764 73 6 8 7
+90227: 48 705 88 61 26
+8181666: 73 8 8 166 9
+4345042264: 16 1 3 8 23 5 183 8 62
+1748: 74 8 5 4 2
+253: 1 3 5 5 160 54
+7800887: 9 4 5 7 5 99 79 15 94 7
+5590: 14 42 8 5 81
+37762: 87 9 48 2 9 167
+333279: 2 2 58 80 363 524 1 57
+171214269218: 844 322 681 3 63
+118944: 5 8 7 873 93
+124807260: 419 9 9 3 40 8 270 300
+57067: 5 2 65 9 88 41 1
+67645321537: 92 3 2 715 36 71 4 4 9 6
+897: 1 7 827 62
+1191701596: 94 6 393 18 83 83 3 15
+1273: 3 4 7 1
+144149: 5 9 32 78 68
+1256472: 63 7 3 2 1 539 71 277 6
+30990621: 309 83 94 668 4
+38536499222: 2 510 18 1 9 95 88 780
+856374: 5 802 1 492 5 7 17
+130842660: 3 6 58 8 1 3 793 9 4 9
+69578132: 7 21 1 5 2 47 6 99 7 1 3 3
+5276748016: 8 7 53 1 208 226 93
+48947804: 5 910 9 3 8 1 330 773 2
+194740286300: 5 8 3 275 5 5 2 67 5 89 9
+22422998: 337 7 85 37 95 905
+6918244: 6 8 497 29 1
+45185615913: 97 710 90 9 1 9 1 810 3
+316116: 27 527 2 312 54
+11292: 929 9 4 5 201 64 9 384
+143302570: 4 16 808 8 117 82 888
+6574936: 810 8 94 844 91
+19500766: 927 48 20 7 67
+5496862: 4 4 2 5 86 8 399 28 3 3 7
+4081: 4 74 6 281 7
+107041551: 2 57 2 900 35 9 52
+365716: 8 34 43 277 3 719
+233199: 34 225 11 9
+75781172: 315 75 3 8 2 9 1 6 4
+6441: 3 601 327 1 3 6 45
+72: 7 5 6
+1847: 2 645 49 191 869 90 1
+689524: 27 4 504 47 44
+421965206413: 87 9 6 8 4 5 206 391 25
+965613600002: 4 846 6 280 7 140 690
+50559280: 8 1 6 4 2 4 567 26 534 4
+365496049: 9 4 32 4 8 7 6 686 7 4 2 5
+64994090: 2 9 4 1 21 74 3 73 79 7
+1241: 1 3 4 2 7 1 927 298
+7392027906: 8 350 66 4 2 7 909
+72665135998: 6 6 743 1 3 4 3 68 727 8
+42527813: 6 563 5 4 3 74 13
+2085967: 414 4 499 14 7
+10090710861: 386 49 70 80 95 41 21
+188483597: 7 582 4 8 218 54 1 877
+367380998: 2 2 2 6 96 3 900 5 998
+68095186: 23 615 83 8 58 665 27
+6509884572: 69 3 7 3 5 447 3 29 45
+24930077: 28 690 986 2 4 3 8 70
+886840: 24 5 86 770 45 5 883
+42180751: 55 6 7 350 535 356 90
+73846429: 761 303 97 4 36
+118157648: 762 70 33 91 1 9 221
+31303: 316 129 114 56
+2340: 1 2 1 90 13
+38925682: 993 392 77 2 5
+132208396: 881 37 1 90 5 8 7 3
+17362906539: 165 30 832 90 653 6
+513060: 806 636 6 352 86
+13556739: 451 47 42 13 3
+87166290: 5 85 372 295 72 4
+2085930558: 856 47 3 770 559
+1271377657: 9 33 460 8 7 7 8 914 6 3
+92480: 40 514 24 4 40
+203612568029: 9 8 9 3 4 593 8 4 4 80 3 1
+997367027585: 79 95 567 99 21 6 2
+14986059: 5 53 1 4 2 4 3 8 9 2 2 338
+16943: 7 4 20 353
+192411245217: 1 4 16 3 411 243 2 214
+3267945: 932 5 35 316 8 35 993
+7584118814: 7 671 470 45 7 3 34
+92005506: 773 3 57 87 6 1 761 8
+83148275295: 3 339 4 451 3 44 80 9 7
+2758387: 393 7 7 3 88
+158229124: 29 55 19 2 19 6 28 3
+19731329: 2 9 1 83 7 94 6 1 2 980 9
+372969: 6 731 54 84 9
+44398676936: 995 485 95 8 446
+29: 4 8 2 5
+28812: 917 31 113 6 27
+3221058: 4 4 121 4 4 5 83 41 620
+5012875154: 898 6 867 8 88 75 157
+619: 81 324 57 159
+2000875149: 877 559 36 5 57 387 8
+538511: 4 7 544 52 863
+37415205: 7 45 7 9 84 9 78 4 9 991
+87187684: 567 6 8 2 951 2
+723726: 7 146 73 188 2 12 9 62
+5611: 15 2 2 547 8
+161732: 8 19 1 4 8 39 32
+77322232001: 8 26 104 9 591 9 93 4 1
+7664: 9 8 5 45 7 2
+43978994: 462 45 951
+184200: 63 29 10 5 4
+24754844735: 574 385 653 66 2
+38841958460: 447 488 62 14 60
+512307698: 78 476 8 7 92 35 2 978
+978764208: 1 83 5 78 7 56 484 4 8 4
+51510: 9 1 77 9 7 32 38 7 583
+519848234: 89 192 64 9 659 7 8 4 3
+279759946564: 694 6 76 839 58 1 6 8 2
+27642337368: 30 7 9 658 999 7 368
+1714046887054: 9 4 3 88 3 699 1 7 3 976
+2096866: 762 7 4 2 9 7 4 7 1 2 27 2
+829347: 57 9 11 283 50 19
+5188: 9 98 18 397 4
+8546580: 3 931 494 63 95
+2569449: 4 318 202 3 8
+1008685401: 3 24 22 9 26 3 511 2 8
+38907: 341 1 41 3 61 4 64
+47134149: 59 5 6 423 9 55 2 6 37
+156: 4 5 48 80 8
+13690: 373 8 21 967 3
+152680: 5 4 62 3 9 75 1 7 6 2 5 4
+22638959: 203 8 12 282 4 90
+667766987: 6 184 969 39 93 7 5 3 2
+491050285: 9 3 9 9 9 7 6 28 270 6 8 3
+123681: 9 1 5 8 4 88 91 3 4 5 14 3
+2442314: 2 5 7 9 947
+66996296: 6 1 9 7 48 8 1 1 8 4 4 372
+527: 6 5 6 4 2
+18881838: 929 53 32 45 52 21 6
+41565: 44 3 73 665 8 52 2
+38558: 1 5 21 68 21
+6715471: 839 434 8
+6389: 91 7 6 9 5 7 178 974 5 4
+2117591196: 3 5 748 679 614 9 3 94
+28162196: 8 7 1 32 2 196
+35808181: 2 2 8 746 180
+9867444479: 73 352 40 6 9 1 2 48 1 4
+78674: 7 501 25 659 66
+45024: 4 4 3 3 18 18 57 276 7
+19756: 4 99 3 942 7
+799: 34 57 708
+157466: 8 2 6 8 7 678 40 9 6 69
+12013722: 53 771 14 3 7
+305851750: 8 736 8 8 5 6 3 34 8 7 5 1
+31627: 85 8 4 85 7
+120636732: 750 274 14 587 7 7
+239363098: 57 7 6 69 1 1 1 8 59 5 4 6
+23142: 7 7 4 3 8 579 6 6 8 8 50
+330: 3 42 4 9 8 5
+610059: 3 3 2 541 80 888
+15743730746: 31 237 561 6 84
+1289162: 5 6 57 370 11 28 8 5 2
+4912012: 49 120 12
+21034792439: 47 1 58 1 7 2 7 915 9 39
+10550: 2 3 9 970 45 8 514 1 5
+27651: 2 9 1 8 1 5 8 7 8 4 4 35
+53322: 8 87 4 8 2 66 63 96 759
+138446470: 26 6 47 682 4 71
+1648416: 9 278 7 657 3
+6538688411: 30 351 741 838 668
+1344480: 7 466 85 43 7 56 424
+244514648942: 468 4 7 2 5 2 1 2 37 945
+241060: 8 3 5 67 8 69 6 48 4
+40133289211: 659 7 87 9 7 2 9 17 4 1
+435126: 783 57 518 8
+17711006228220: 76 834 259 998 890
+5734080: 36 1 1 288 55
+8979895786: 9 2 93 110 38 8 5 21
+3330: 532 23 6
+10241840: 102 34 7 8 38
+13305407: 2 1 4 5 8 7 259 5 2 12 5 2
+1433165: 3 9 1 891 73 367 65
+177433659084: 44 3 58 41 477 10 4 2
+222432: 311 919 67 3 4 6 71 56
+85538: 1 4 7 2 910
+32399920: 9 4 9 9 9 343 93 8 3 8 70
+3157308169: 1 373 938 9 169
+48314570: 8 329 1 58 9 3 470 5
+2157760504767: 751 9 9 76 9 2 9 7 9 2 8 3
+113124347: 1 9 87 43 2 9 95 347 1
+234373743: 2 9 28 89 3 4 285
+65134472: 65 133 910 5 559
+5111: 5 42 2 513 9 53
+280608943: 45 909 7 7 7 5 5 9 4 587
+4944: 40 1 9 45
+177101: 80 4 186 35 2
+8123256299: 643 1 251 7 58 4 9 296
+2610013: 28 55 24 2 655 487 6
+3473695: 10 681 6 7 17 5
+102288: 44 8 693 6 8 980 4 2
+792006: 80 9 71 8 1 44 73 6 82
+8393424: 656 4 6 4 3 8 4 9 8 87 3 4
+3357448904: 9 2 514 71 901
+11955840: 5 778 1 3 2 8 3 2 4 4 16
+33523655: 1 1 3 1 1 294 8 68 4 5 8 3
+40658: 1 477 43 78 20
+419: 5 99 4
+10692: 9 8 4 4 27
+2316100872: 772 5 1 6 812 6
+8456347: 98 587 147 25
+45388: 6 755 4 4 18 59
+98449258: 90 859 57 260 7
+290537744: 880 4 3 514 8 11
+1920630535: 5 7 1 57 4 6 4 84 1 771
+41738341141: 8 3 103 9 3 4 6 5 962
+267888: 53 5 71 5 36
+457162268328: 14 3 754 7 71 9 6 318
+9818370: 378 26 9 30 10 3 90
+136158886: 8 1 7 95 325 2 1 5 3 8 7
+407: 6 42 69 8 78
+1012705468: 822 4 44 7 657 811
+4180406340096: 466 981 98 12 6 36 9 4
+10705064: 4 424 136 5 931 181
+2217819683: 7 51 62 9 9 423 96 3 5 4
+7508279323: 3 250 555 272 3 6 32 2
+2658216: 558 18 25 4 66
+59297: 60 97 2 747 351
+7495229447: 8 328 9 266 28 50
+2644059830523: 57 55 2 97 574 815 8
+54008124608: 94 751 10 958 57
+2207268: 50 592 72 49 50 7 9
+9395936945: 83 33 540 34 9 806 4
+65754981: 340 41 89 53
+5424: 267 8 2 69
+194627: 564 43 8 613 1
+75167376: 75 166 1 972 404
+237336645000: 628 915 45 700 590
+522553: 7 58 4 91 7 2 7 9 148 49
+4897: 29 13 6 95
+13670996090: 500 614 6 73 31 610
+16290039939: 74 7 6 1 7 882 87 2 438
+2804002896239: 85 2 41 17 5 52 774 5
+86506: 910 1 29 157 73 74
+21660911180: 722 2 15 911 180
+6815: 6 743 72
+114802992537: 6 17 215 5 39 1 5 186 2
+720907: 203 61 587 39 81 8
+15904808: 28 3 80 96 5 5
+200829237621: 999 710 37 3 744 27
+95188135587: 835 3 68 49 755 579 8
+61525: 81 49 4 75 3 4 5 8 28
+13221210319: 3 486 9 6 6 4 20 5 5 6 2 8
+3728996709124: 945 71 9 708 62 96 6 1
+39283710: 7 46 6 3 64 51 9 717
+24046652: 1 8 92 61 34 2 646 46 7
+178492223: 4 1 18 61 81 5 7 2 8 194
+1677144138: 6 123 83 227 39
+105579656: 2 3 4 7 2 96 8 6 63 6 366
+78276190303: 7 94 9 131 13 41 3 7 9
+110367683: 778 9 8 5 5 3 4 9 394 9
+7626312605: 4 502 5 552 1 72 598 5
+56319236258: 9 5 39 82 6 8 9 548 258
+5406139: 642 842 45 4 6
+45342: 7 29 96 267 8 1 2 50
+7525096: 1 820 330 35 97
+80899207: 11 236 80 9 7
+1022048029: 328 76 82 5 24 7
+853304431680: 313 630 752 6 603
+4608388638: 31 9 958 177 93
+68959734: 7 8 33 5 44 732 6 2 6 4
+4653: 845 319 4
+2523796352: 2 51 789 2 4 8 98
+185856: 885 21 6
+19948509: 72 83 24 3 910 396
+1680716: 236 37 35 71 3