From 15935d3f23107e24099bad0b2d1ecb528f04bea0 Mon Sep 17 00:00:00 2001 From: Simon Ziegler Date: Mon, 1 Dec 2025 15:03:10 +0100 Subject: [PATCH] day 01 --- 01/go.mod | 3 + 01/input | 4462 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 01/main.go | 54 + 01/test | 10 + 01/wrongs | 2 + 5 files changed, 4531 insertions(+) create mode 100644 01/go.mod create mode 100644 01/input create mode 100644 01/main.go create mode 100644 01/test create mode 100644 01/wrongs diff --git a/01/go.mod b/01/go.mod new file mode 100644 index 0000000..cbf6afd --- /dev/null +++ b/01/go.mod @@ -0,0 +1,3 @@ +module git.z1glr.de/advent-of-code-2025/01 + +go 1.25.4 diff --git a/01/input b/01/input new file mode 100644 index 0000000..3df65dd --- /dev/null +++ b/01/input @@ -0,0 +1,4462 @@ +L50 +L9 +L2 +R42 +R41 +R5 +R23 +L26 +R13 +R3 +R22 +R35 +R48 +R3 +L12 +L50 +L46 +R18 +R24 +L10 +L34 +L12 +L31 +L5 +L20 +R9 +L34 +R23 +R6 +R11 +R26 +L13 +L8 +L8 +R43 +L43 +L11 +R41 +L40 +L11 +R29 +L24 +L41 +L4 +L17 +R45 +R22 +L1 +R38 +R42 +R27 +R75 +L86 +R46 +R31 +R7 +L67 +R67 +L8 +L41 +R80 +R5 +R89 +R33 +R74 +L84 +L2 +R77 +R8 +L31 +L12 +R51 +R91 +R88 +L26 +R55 +L45 +L2 +L31 +R82 +R3 +R46 +L70 +R53 +R87 +R7 +R53 +R84 +L7 +R76 +R17 +R81 +L71 +L80 +L69 +R7 +L73 +L34 +L17 +L78 +R92 +R42 +L1 +R1 +R11 +L8 +L3 +R675 +R48 +L23 +R25 +R60 +L578 +R93 +L29 +L71 +R273 +L69 +L67 +L937 +R66 +L66 +R13 +R88 +R30 +R69 +R24 +R22 +R61 +R521 +L23 +R95 +L73 +L47 +L80 +R366 +R592 +L357 +R88 +L859 +L77 +L53 +L64 +L36 +L13 +R48 +R65 +R563 +L9 +R46 +L59 +R1 +R656 +L30 +L68 +R95 +L19 +L84 +R65 +R708 +L50 +R585 +L17 +L47 +R64 +R97 +L89 +L82 +R74 +L69 +L31 +L67 +L231 +L22 +L28 +L61 +R855 +R71 +R60 +L632 +L77 +L99 +L69 +L63 +L37 +R616 +L16 +R70 +R11 +L35 +L922 +L82 +R76 +R92 +R90 +R16 +R84 +L67 +L67 +L166 +R18 +R182 +R22 +R394 +R66 +L5 +R528 +R539 +L82 +R859 +L21 +R15 +L13 +R93 +L44 +R13 +R490 +R46 +R44 +R21 +R35 +R616 +L16 +L16 +R16 +R88 +R64 +L73 +L80 +L99 +R59 +R541 +L61 +R86 +R41 +R32 +L98 +R42 +R58 +R68 +R783 +L57 +R54 +L41 +L63 +L38 +R60 +L69 +L797 +R56 +R2 +R42 +R63 +L63 +R84 +R71 +R45 +R29 +L1 +R343 +L71 +R3 +L81 +L22 +R610 +L10 +R63 +R53 +L85 +L95 +R852 +L21 +R97 +R36 +R21 +L16 +L5 +L99 +R99 +L41 +L31 +L76 +R90 +L66 +L77 +L52 +R27 +L90 +R16 +R41 +L18 +R77 +R95 +R4 +R15 +L27 +R13 +L85 +R85 +R180 +R75 +L34 +R79 +R53 +R47 +R12 +R87 +L99 +R92 +L92 +R85 +L85 +R21 +R93 +L14 +L5 +L41 +R69 +L23 +L38 +R94 +L56 +L7 +R254 +L47 +R672 +L72 +R77 +R23 +L93 +L7 +R7 +L69 +L93 +L18 +L40 +L59 +R62 +R7 +R3 +L87 +R83 +L752 +L54 +R910 +R296 +L85 +R89 +R20 +R24 +L44 +L66 +R99 +R267 +R78 +L78 +R83 +R915 +R84 +R13 +L37 +R56 +L14 +R25 +R62 +L87 +R91 +L91 +L33 +R92 +R41 +R847 +R53 +L68 +R37 +L841 +R17 +R22 +L98 +R631 +L27 +R177 +R450 +R448 +L3 +L45 +L62 +R62 +L36 +R3 +R2 +R31 +R93 +R36 +R663 +R14 +L91 +R946 +R441 +L56 +L5 +R459 +L965 +R695 +L358 +L99 +L16 +R171 +R72 +L24 +R9 +L85 +L42 +L463 +L52 +L46 +R3 +L83 +R83 +R415 +R8 +R94 +R83 +L58 +R962 +R96 +L8 +L983 +L9 +R92 +L14 +R22 +R69 +R70 +R456 +L721 +R249 +R37 +L660 +R48 +R52 +L79 +R79 +R878 +L78 +L65 +L35 +R66 +R31 +R83 +L608 +L57 +L15 +R96 +L96 +R76 +R2 +R699 +L609 +R30 +L82 +R31 +R53 +L51 +L247 +L68 +L59 +R812 +L427 +L60 +R13 +R87 +R81 +L18 +L763 +R89 +L5 +R264 +R1 +R951 +R789 +L1 +R439 +L332 +L44 +R12 +R37 +L67 +R33 +R4 +L70 +L92 +L71 +R63 +L43 +R73 +R70 +R13 +L45 +R40 +R37 +L90 +R45 +R44 +L44 +R15 +R37 +L30 +L22 +L357 +R55 +L30 +L92 +R12 +L88 +R71 +L24 +R53 +R987 +L54 +R578 +R52 +L63 +R581 +R619 +L33 +R33 +L82 +R682 +R411 +L17 +R84 +R22 +R49 +R407 +R67 +L323 +R180 +R20 +R74 +L24 +L4 +R836 +R72 +R46 +R91 +L19 +L94 +L96 +R63 +L945 +R91 +R509 +L46 +L61 +L228 +L365 +R89 +L55 +L50 +L65 +R8 +R73 +R78 +R29 +R14 +R79 +L48 +R62 +L52 +L904 +L90 +L225 +R71 +R82 +L93 +L3 +L370 +L30 +R57 +R43 +R13 +R887 +R68 +R594 +R96 +L9 +R51 +L80 +R81 +L24 +R77 +R510 +L24 +R69 +R317 +R74 +R96 +L28 +R98 +L66 +R129 +L53 +L76 +L22 +L78 +R4 +R3 +R29 +L36 +L683 +L8 +R91 +L66 +L34 +L63 +R63 +L78 +L22 +L64 +L11 +R33 +L741 +L51 +L66 +L59 +R59 +R248 +L45 +L3 +R26 +L26 +R7 +R393 +R782 +R44 +R74 +R6 +L702 +R52 +L856 +R63 +L5 +L224 +R352 +R89 +L22 +R374 +R73 +L67 +L49 +L284 +R671 +R29 +L43 +L590 +R50 +R69 +L86 +L64 +L36 +L714 +R14 +R30 +L92 +R62 +L93 +R838 +R55 +L20 +R944 +R476 +R38 +R33 +R29 +R61 +L61 +R446 +L30 +L16 +L610 +L44 +L854 +R8 +L65 +L13 +R89 +L11 +R92 +R8 +L84 +L90 +R74 +R93 +L22 +L71 +R98 +R102 +L53 +R53 +L129 +R29 +R72 +R50 +L22 +L62 +R61 +L40 +R53 +R88 +L83 +R83 +L72 +L57 +R29 +R88 +R412 +R88 +L899 +R64 +L19 +L453 +L46 +L64 +L71 +R41 +R60 +R99 +L376 +R76 +L3 +R3 +L65 +R865 +L1 +R78 +R62 +R36 +L75 +R19 +R981 +R311 +L404 +L76 +L31 +R756 +R44 +R69 +R7 +R924 +R35 +L81 +L30 +L86 +L38 +L260 +R60 +L3 +R37 +R55 +L20 +L69 +L34 +R25 +L61 +R67 +R24 +L60 +L94 +R33 +L44 +R34 +R16 +R794 +L43 +L43 +L414 +L30 +R804 +L771 +R97 +R66 +L66 +R995 +R86 +L63 +R92 +L5 +R95 +R8 +L99 +L71 +R30 +R84 +R48 +R22 +L54 +L68 +L37 +L63 +L371 +R71 +L85 +L15 +L85 +L27 +R598 +L839 +R30 +R43 +L44 +R24 +R50 +R15 +R61 +L360 +L740 +L532 +L94 +R375 +R72 +R153 +L20 +L9 +L420 +R78 +R595 +R76 +R7 +L32 +R21 +R79 +R43 +L31 +L77 +R65 +R42 +R26 +R54 +L97 +L55 +L39 +R294 +L722 +R222 +L91 +L983 +L26 +L66 +L857 +L77 +R19 +L19 +R28 +R487 +R44 +L27 +R68 +L75 +L25 +R374 +R21 +L8 +R327 +L47 +R92 +R41 +L63 +R81 +R82 +R69 +R8 +L27 +R50 +R44 +R98 +L9 +L89 +L44 +L123 +R51 +L150 +L278 +R29 +R71 +R73 +L78 +L95 +R57 +L64 +R98 +R9 +R59 +R72 +L31 +L805 +R8 +R25 +L893 +R44 +R21 +R78 +R33 +R789 +R15 +L19 +R810 +R63 +L569 +L42 +R591 +L49 +L589 +R41 +L426 +R74 +R63 +L80 +R675 +L96 +L62 +L14 +L8 +R22 +R74 +R52 +R74 +L45 +R45 +R53 +R903 +L61 +R5 +R18 +R66 +R76 +R88 +R43 +R30 +L95 +L259 +L867 +L86 +L96 +L6 +R43 +R88 +L88 +R2 +R12 +R17 +L86 +R44 +L47 +R85 +L38 +R54 +L98 +R84 +L484 +R803 +L278 +L69 +L56 +L40 +L160 +L80 +L20 +L12 +L49 +L39 +R73 +L903 +R30 +L65 +L30 +R9 +R325 +R99 +R60 +R56 +L54 +L46 +R46 +R65 +L65 +R11 +R68 +L94 +L81 +R37 +R876 +L35 +L549 +R54 +L87 +R41 +L45 +R50 +R54 +L94 +R98 +R96 +R96 +R18 +R86 +L788 +L922 +L14 +R57 +L75 +L8 +R71 +L335 +L53 +R81 +L14 +L88 +R855 +L24 +R80 +L23 +R36 +R108 +L68 +L76 +L49 +R49 +R39 +L39 +L69 +L24 +L73 +L34 +R85 +L85 +R91 +R9 +R38 +L706 +L703 +L729 +L947 +R90 +R72 +L1 +R886 +L15 +L58 +L16 +L66 +L19 +R83 +L9 +R10 +R90 +L35 +L88 +L77 +R82 +R39 +R34 +L547 +R92 +R945 +R18 +R640 +L3 +R797 +R90 +L87 +R17 +L17 +L782 +R82 +R63 +L97 +L19 +R70 +L9 +L8 +L71 +L429 +L521 +R97 +L76 +L85 +R72 +R14 +R60 +R39 +R49 +L49 +R783 +L5 +R23 +R70 +R69 +L48 +R37 +L7 +R78 +L81 +L3 +R84 +R46 +L31 +R52 +L23 +L26 +L23 +L95 +R4 +R3 +L21 +R43 +L99 +R36 +L2 +L89 +L258 +L17 +L61 +R20 +L408 +L854 +R705 +L56 +L786 +R40 +L81 +L59 +L690 +L54 +R66 +R18 +R99 +R21 +L1 +L19 +R4 +R24 +R72 +R27 +L76 +R549 +L78 +R87 +R54 +R514 +L90 +L13 +L2 +R46 +R32 +L50 +R188 +R244 +L37 +R40 +R649 +L149 +R65 +L14 +R14 +L459 +L41 +R571 +R29 +L86 +L946 +L97 +L93 +R35 +R87 +L90 +L410 +R4 +L97 +L21 +R14 +L1 +L42 +L57 +L86 +L63 +R49 +L92 +R4 +R268 +L80 +R12 +L12 +L87 +L85 +R234 +L22 +L40 +L76 +L24 +R812 +L4 +R92 +R51 +L71 +R7 +L87 +L22 +R22 +L91 +R91 +L78 +L90 +R12 +R588 +L91 +L78 +R28 +L687 +R7 +R89 +L75 +L9 +R25 +L11 +R470 +R958 +L8 +R69 +L927 +R8 +R72 +L27 +R567 +R1 +R31 +L44 +L76 +R30 +R66 +L71 +L68 +R31 +R89 +L55 +R79 +L808 +R83 +R978 +L78 +L41 +L414 +R70 +R241 +L156 +L339 +R67 +L56 +L72 +L11 +L20 +L22 +L747 +R47 +R53 +L34 +L91 +L58 +L162 +R33 +L555 +R250 +L954 +L51 +L55 +R642 +L365 +L98 +R54 +R44 +R74 +L116 +L2 +R44 +R3 +R23 +L68 +L508 +L50 +R87 +L44 +R657 +R62 +L84 +L46 +L57 +R172 +R53 +L341 +R44 +L70 +R67 +L93 +R41 +R91 +R44 +R62 +R78 +R77 +R251 +L679 +L52 +L256 +R33 +L362 +R95 +L163 +R94 +L15 +R42 +R730 +R582 +R6 +L497 +R68 +L36 +R34 +L75 +L29 +L771 +R44 +R56 +R15 +L119 +L25 +L52 +L55 +L24 +L28 +R988 +L53 +L98 +R70 +L34 +R32 +L42 +R31 +L47 +R41 +L62 +L938 +L80 +R580 +L383 +R583 +L41 +L44 +R216 +L31 +R2 +R26 +R80 +L96 +R77 +R45 +L34 +L10 +L90 +L41 +L59 +R81 +R186 +R33 +L49 +R49 +R20 +L52 +R666 +R80 +L27 +L20 +L957 +L89 +R15 +R64 +R88 +L55 +R67 +R38 +L52 +L97 +R61 +R50 +L48 +L252 +L834 +R34 +L63 +R33 +R83 +R33 +R41 +R746 +L94 +L16 +R21 +L48 +L9 +R73 +L12 +L40 +L764 +L58 +L12 +L73 +L17 +L24 +R93 +L93 +L55 +L65 +R62 +R68 +L10 +R80 +L336 +L13 +R32 +L491 +R20 +R94 +L54 +R14 +L62 +R16 +L27 +R27 +L45 +R17 +L77 +R5 +L36 +L26 +L51 +R428 +R58 +R827 +L3 +L97 +L77 +L23 +R27 +L20 +R24 +R69 +R31 +L65 +R580 +R573 +R40 +R41 +R164 +R39 +L3 +L13 +R85 +R28 +R7 +L45 +L62 +L2 +L50 +L530 +R331 +R16 +R26 +R39 +L16 +R87 +R54 +L68 +L2 +L969 +L5 +R68 +R40 +L19 +L77 +L23 +R683 +L83 +R82 +L82 +R36 +L36 +L55 +R55 +R896 +L47 +L449 +L56 +L82 +L971 +L62 +L28 +L3 +R23 +R74 +R603 +R23 +L5 +R184 +R52 +L55 +L14 +L83 +R31 +R591 +R66 +L327 +R60 +L991 +L68 +R64 +R17 +R38 +L38 +R57 +R72 +R28 +L85 +R73 +R83 +R46 +L44 +L72 +R99 +L19 +R619 +R18 +L18 +R93 +L50 +L43 +L59 +L16 +R75 +L99 +R60 +L61 +L35 +L49 +L16 +R89 +L54 +L17 +L718 +R62 +L62 +L22 +R22 +L39 +L61 +L68 +R62 +R6 +R4 +L104 +L91 +L9 +L887 +R72 +R65 +R50 +R33 +R159 +L15 +R551 +L28 +R499 +R64 +L63 +L67 +L169 +L32 +R68 +R926 +R65 +L982 +R96 +L46 +R26 +R594 +L21 +L858 +L63 +R63 +R69 +L269 +L41 +R61 +L50 +R37 +L7 +L47 +L15 +L63 +R25 +L99 +L87 +R7 +L21 +L787 +L87 +R74 +L86 +L804 +L10 +L13 +L55 +L24 +L8 +R96 +R4 +L68 +L83 +R51 +L43 +L98 +R55 +L758 +R70 +L77 +L74 +L75 +R19 +L24 +L646 +L49 +R47 +R53 +R91 +R9 +L56 +R19 +R90 +R37 +L358 +R96 +R67 +R5 +R12 +R435 +L82 +R69 +L9 +L89 +R896 +L32 +L53 +R132 +L84 +R67 +L42 +L617 +L45 +L36 +R78 +R70 +R94 +R50 +L14 +R42 +R27 +L59 +L10 +R20 +R16 +R64 +L9 +L91 +R74 +L34 +L53 +L87 +R64 +L64 +L40 +R40 +R22 +L22 +L13 +R857 +R5 +R74 +R77 +R43 +R98 +R425 +L5 +R36 +L3 +L38 +L56 +L968 +R453 +L1 +L84 +L95 +L63 +R58 +L30 +L78 +L92 +L939 +R83 +L40 +L4 +R40 +L40 +R16 +R22 +R962 +R57 +L57 +L8 +R17 +R41 +R97 +R70 +L17 +L276 +R55 +R60 +R930 +R25 +L94 +R49 +R10 +R341 +L36 +R41 +R29 +L108 +L74 +L52 +R30 +R68 +L71 +R73 +R11 +L54 +R13 +L70 +R69 +L69 +L36 +R77 +R22 +R61 +R115 +L39 +L87 +L40 +R27 +L13 +R13 +R27 +L3 +R76 +R63 +R34 +L750 +L78 +L11 +R42 +R88 +R12 +R138 +R62 +R39 +L39 +L13 +L75 +R36 +R3 +L63 +L88 +L556 +R48 +R81 +R27 +R33 +R53 +L195 +L91 +R85 +L85 +R83 +R84 +L95 +R28 +R724 +L62 +L62 +L954 +L56 +R10 +L7 +L87 +R957 +R64 +R73 +L325 +L775 +R52 +R48 +R41 +L41 +L90 +R90 +L591 +R81 +L190 +L61 +L99 +L987 +R30 +R992 +L75 +L97 +R97 +R126 +R175 +L1 +R50 +L50 +R262 +R38 +L26 +L174 +R52 +L30 +R23 +R89 +L30 +R928 +L32 +L64 +L418 +R30 +L78 +R45 +L46 +R59 +L4 +L22 +R2 +R17 +L97 +R64 +L46 +L83 +L59 +L85 +R74 +L76 +L13 +R30 +L230 +R11 +L150 +L61 +R55 +L6 +L29 +L17 +L87 +R84 +R394 +L94 +R92 +L97 +L595 +R317 +L85 +L32 +L358 +R58 +L344 +L46 +L76 +L28 +L46 +R840 +L20 +R20 +R24 +R76 +R30 +L430 +L53 +R53 +L41 +R941 +L664 +L36 +L420 +R20 +R21 +L21 +L38 +R38 +L16 +L78 +R846 +L95 +L952 +L86 +L19 +L28 +R5 +R89 +R6 +R78 +L23 +L5 +L22 +R271 +R6 +R48 +R4 +L91 +R84 +R13 +R20 +L855 +R91 +L74 +R41 +L49 +L86 +R19 +L42 +R865 +L2 +R96 +L236 +L23 +L63 +R63 +L51 +R66 +L521 +L5 +R31 +L52 +L68 +R30 +L517 +L16 +L4 +R35 +R16 +L44 +R60 +L27 +R67 +L206 +L85 +R891 +L643 +R43 +L2 +L67 +L32 +R601 +R86 +R3 +R11 +L19 +R80 +L59 +L702 +L154 +R85 +R79 +R94 +R496 +L72 +R33 +L71 +R33 +L23 +R78 +R22 +L36 +R136 +R319 +L3 +R61 +R43 +L433 +L87 +R7 +R655 +R46 +R95 +L3 +R8 +L108 +L349 +L91 +L360 +R53 +L29 +R76 +R43 +R1 +R39 +L829 +L54 +L61 +R61 +R72 +L986 +R14 +R35 +R83 +R68 +R21 +L58 +L249 +R51 +L30 +R63 +L484 +R96 +L435 +R39 +R71 +R339 +L10 +R69 +L69 +R2 +L44 +R244 +L492 +L75 +R62 +R47 +L51 +R53 +L24 +L80 +R8 +R78 +R94 +L45 +R42 +L13 +L94 +L40 +L30 +L16 +L26 +L482 +R82 +L83 +R798 +R16 +R69 +R9 +R6 +L89 +L77 +L49 +L24 +L57 +R56 +L175 +L56 +R20 +R33 +R20 +L44 +L93 +R20 +R99 +L99 +R8 +L251 +L57 +L5 +R63 +L59 +R16 +R70 +L42 +L30 +L61 +R68 +R180 +L566 +L80 +L76 +L30 +R71 +L73 +R65 +R92 +L3 +R67 +R33 +L54 +L43 +L81 +R78 +L76 +L24 +R17 +L56 +L41 +L58 +R938 +R54 +L53 +L1 +L96 +L75 +R771 +L85 +L15 +L48 +R98 +L56 +L83 +R290 +L84 +L17 +R51 +R44 +R15 +L98 +L43 +L69 +R16 +R84 +R35 +R78 +L13 +L60 +R882 +R521 +R1 +L431 +R58 +R829 +R75 +R99 +L48 +R77 +L86 +R70 +R114 +R788 +R11 +L95 +L75 +R633 +L94 +R331 +R92 +L18 +L75 +L29 +L35 +R65 +L59 +L88 +L75 +L40 +R27 +L65 +L319 +R19 +R56 +L95 +R39 +R65 +R15 +R60 +L50 +R66 +L56 +R62 +L762 +L58 +L49 +L93 +R35 +L50 +R69 +R574 +L28 +R44 +R56 +L45 +R79 +L5 +R36 +L63 +L602 +L51 +L22 +L10 +R73 +L35 +R45 +R66 +R34 +L776 +R35 +L459 +L10 +L261 +L57 +L87 +L260 +R13 +R70 +R92 +L23 +L87 +L90 +L517 +L38 +L78 +R410 +L89 +L30 +R87 +L36 +L14 +R19 +R29 +L43 +R81 +R57 +L338 +L22 +L15 +R79 +R56 +R648 +L912 +R59 +L90 +L29 +R17 +L11 +R520 +R86 +R14 +R97 +R73 +L85 +L96 +R720 +R707 +L95 +R54 +L52 +L97 +L26 +L98 +R578 +L62 +R80 +R8 +L6 +L37 +R437 +L47 +L16 +R61 +L98 +L59 +L98 +L63 +L55 +L325 +L11 +L25 +L98 +L39 +L27 +R20 +L739 +L781 +L48 +L206 +L37 +L37 +L87 +R22 +R26 +L33 +R67 +R552 +L67 +L84 +R32 +R48 +L88 +R27 +R78 +R79 +R250 +L82 +L54 +L95 +R37 +L83 +R83 +R46 +L51 +R46 +R59 +L217 +R835 +L65 +R50 +L557 +R154 +L87 +L741 +R93 +L65 +L519 +R187 +R16 +R16 +R82 +L82 +L89 +L211 +L719 +L3 +R22 +R29 +L29 +L23 +L77 +R3 +L3 +R71 +L71 +R636 +R64 +R103 +L741 +R88 +R550 +R49 +L66 +L97 +R114 +L881 +R17 +L91 +L15 +R70 +R21 +R714 +L71 +R10 +R47 +R665 +R14 +L41 +L68 +L98 +R89 +R95 +R23 +L76 +R92 +L47 +R222 +L48 +L63 +R43 +R73 +L96 +R23 +L23 +L34 +L54 +R96 +L66 +R32 +R997 +R23 +L2 +R44 +R41 +R12 +R27 +L24 +R808 +L59 +R5 +R33 +L54 +R953 +R1 +R21 +L973 +L27 +R91 +L64 +R55 +R618 +L34 +L26 +R94 +R64 +R368 +R34 +R65 +L65 +L176 +R76 +R295 +L172 +L49 +R40 +R83 +L76 +R79 +L69 +L17 +R63 +R223 +R41 +L49 +L92 +R81 +R19 +L84 +R46 +R38 +L89 +R89 +R496 +L58 +R24 +R11 +L39 +R59 +R7 +R582 +L82 +L44 +R44 +L10 +L528 +R238 +R89 +R98 +R92 +L53 +R74 +R29 +L75 +L60 +L38 +R44 +L109 +R209 +R84 +R417 +L154 +L447 +R34 +L65 +L215 +L39 +L15 +R97 +R74 +L91 +R20 +R2 +L502 +R94 +R6 +L75 +L682 +R57 +R15 +R72 +L487 +R440 +R617 +L11 +R54 +R18 +L20 +R275 +R41 +L14 +L59 +L42 +L99 +L832 +L52 +L88 +L28 +R76 +R71 +R9 +L56 +L10 +L790 +L746 +R63 +L96 +R13 +L34 +R901 +R99 +R68 +R32 +L81 +L68 +L18 +L29 +R5 +R24 +R767 +L29 +R81 +L52 +L37 +R9 +R928 +L91 +L44 +L97 +L68 +L95 +L5 +L55 +L30 +L76 +R61 +R79 +R73 +L81 +R75 +L650 +L836 +L65 +L95 +R43 +R57 +R9 +R64 +R27 +R62 +L210 +L283 +R731 +R1 +R299 +R23 +R54 +R87 +L864 +L35 +R82 +R61 +L158 +R682 +L804 +L28 +L288 +R88 +L5 +R86 +R8 +L8 +R19 +R138 +R570 +R50 +L52 +L43 +L47 +L99 +R83 +L26 +R426 +R13 +R13 +L28 +L88 +L675 +R77 +L412 +R385 +L37 +L95 +L10 +L843 +R9 +L9 +R55 +L78 +L25 +R55 +L52 +L55 +R71 +R29 +L6 +L94 +L63 +R77 +R8 +L15 +L907 +R89 +L689 +L88 +R89 +L1 +L53 +R53 +L85 +L15 +R57 +R86 +L12 +L2 +L647 +R41 +R677 +L25 +R25 +L69 +R38 +R31 +L14 +R14 +L63 +R63 +R40 +R35 +L83 +R8 +L634 +L330 +L44 +L692 +R62 +R34 +L52 +R656 +R21 +R59 +L280 +L76 +L305 +R42 +R59 +L1 +R17 +L36 +R754 +L5 +L49 +R347 +L47 +R499 +R49 +L12 +L36 +R22 +L22 +R51 +L75 +L76 +L756 +R95 +L34 +R93 +R27 +R11 +R44 +L80 +L97 +L72 +R69 +R31 +R169 +R38 +R33 +R168 +R61 +L408 +L92 +R47 +R653 +L97 +R7 +R40 +L52 +L160 +L38 +R7 +R181 +R21 +L39 +R785 +R45 +R33 +R67 +L26 +L99 +L52 +R642 +R661 +L34 +L92 +R96 +L396 +L24 +L9 +R33 +L41 +R79 +R25 +R489 +R59 +L784 +L27 +R62 +R746 +R55 +R22 +L7 +L720 +R48 +R48 +R46 +L49 +L51 +R62 +L62 +L63 +R65 +L2 +R59 +L59 +L98 +L2 +R566 +R967 +L71 +R39 +L88 +L3 +L32 +R622 +R2 +R24 +R174 +R53 +L93 +R14 +L78 +L62 +L965 +R262 +R697 +R29 +R43 +L26 +R683 +L57 +L98 +L31 +L25 +L703 +L43 +L27 +L80 +L831 +R297 +L599 +R940 +L25 +L75 +R40 +R87 +L8 +L819 +R667 +R86 +R97 +R50 +L888 +L31 +L75 +L24 +R18 +L46 +L72 +R38 +L12 +L33 +L703 +L72 +R20 +R94 +L50 +R936 +L29 +L43 +L2 +R94 +R39 +R98 +R80 +L50 +L16 +R973 +L744 +R80 +L3 +R64 +R20 +L96 +L70 +R5 +L18 +L37 +L18 +R79 +R19 +L25 +L930 +L36 +L34 +L73 +L27 +L18 +L55 +R73 +R678 +L65 +R55 +R32 +L41 +R39 +R49 +R953 +L27 +L973 +R96 +R25 +L21 +R406 +R94 +R25 +R72 +R154 +R84 +L19 +L16 +R85 +L85 +R45 +R29 +R826 +L7 +R644 +L37 +R79 +L517 +R52 +R74 +R12 +R52 +R64 +L96 +R264 +L24 +R8 +L68 +L79 +R79 +R382 +R82 +R308 +L72 +L18 +L49 +R37 +L431 +L39 +L75 +L64 +L51 +L112 +L9 +L13 +R837 +R77 +R188 +L37 +L62 +L64 +R15 +L6 +R76 +L463 +R63 +R915 +R145 +R40 +L99 +L84 +R389 +R55 +L93 +R932 +R31 +R8 +L41 +R951 +R440 +R79 +L81 +R413 +L731 +L69 +L19 +L391 +R910 +R15 +L15 +L774 +L126 +R85 +R297 +R483 +L65 +R49 +L664 +L85 +L6 +L11 +R57 +R76 +L70 +L122 +L41 +L17 +R50 +R84 +L358 +L35 +R793 +R46 +L46 +R93 +L97 +R4 +R31 +L31 +R71 +R1 +L56 +L15 +R81 +R218 +L358 +R58 +L63 +L67 +R30 +R40 +R560 +R16 +R725 +L56 +R24 +L47 +L40 +R13 +R69 +R7 +L78 +L32 +L1 +R62 +R38 +R19 +L4 +L121 +R59 +R72 +L84 +R19 +L451 +L47 +L62 +L47 +R33 +L267 +R47 +L66 +L40 +R50 +R31 +R59 +L83 +L683 +R97 +R785 +R870 +R14 +R1 +R99 +R95 +R81 +R24 +L2 +L696 +R2 +R70 +L53 +L21 +L844 +L83 +R80 +L254 +R740 +L98 +R959 +L38 +R94 +R244 +R83 +L72 +L90 +R642 +R15 +L75 +R141 +R42 +L465 +L94 +L17 +L59 +R57 +R92 +R77 +R54 +R69 +R45 +L84 +L61 +L634 +R49 +L15 +L59 +R449 +L355 +L43 +R8 +R154 +R1 +L97 +R28 +R71 +R43 +L671 +R71 +R3 +L79 +L74 +R42 +L92 +R628 +R930 +R973 +L24 +R48 +R45 +L492 +L108 +L14 +L86 +L4 +R48 +R77 +L96 +L2 +L23 +R46 +L46 +R510 +R90 +R3 +R97 +L52 +L48 +R64 +L67 +R3 +L23 +L73 +L4 +L12 +R67 +R28 +R83 +R3 +R531 +L70 +R70 +R50 +R14 +R43 +L17 +L26 +L97 +R7 +R45 +L19 +R84 +R16 +L67 +L33 +R38 +R879 +L67 +R719 +R27 +R58 +R86 +L64 +R77 +R81 +R66 +L40 +R35 +L95 +L708 +R70 +R27 +L53 +L96 +R18 +L958 +L7 +R853 +R6 +L27 +R20 +R41 +R14 +L67 +L963 +R30 +L91 +L67 +R60 +R33 +L25 +R41 +L251 +R32 +L71 +L57 +L4 +R661 +R39 +L46 +R812 +L75 +L74 +R98 +R22 +R49 +R14 +L1 +L99 +L695 +L85 +L12 +R492 +L84 +R702 +R788 +L606 +R25 +R75 +R543 +R6 +L53 +L26 +R66 +L37 +L6 +L93 +R19 +R81 +L82 +R54 +R636 +R85 +L93 +R5 +L75 +L61 +L31 +R99 +L46 +L92 +R48 +L71 +L76 +R83 +L9 +R37 +L12 +L56 +R57 +L77 +L23 +L56 +L44 +L48 +L52 +L74 +L31 +R825 +R61 +R46 +L90 +L35 +R34 +L36 +L893 +R93 +L550 +R50 +R70 +L70 +R48 +L33 +R885 +R21 +L21 +L43 +R63 +L20 +L61 +L43 +L11 +L937 +R52 +L112 +L88 +R56 +R747 +R36 +L70 +L69 +L52 +L19 +L29 +L281 +R51 +R34 +L21 +R16 +R26 +L25 +R78 +L583 +R77 +R28 +L14 +L86 +R53 +L20 +L33 +R73 +L741 +L91 +L438 +L71 +R94 +R417 +L476 +R16 +L23 +R670 +L66 +L55 +R55 +L9 +R6 +L38 +L39 +R299 +L83 +L9 +L91 +R7 +L7 +R31 +R373 +L49 +L55 +L36 +R36 +L67 +L23 +L710 +L59 +R59 +L79 +L21 +R211 +L11 +L32 +L68 +R5 +L79 +R74 +R90 +L44 +L58 +L64 +R76 +R83 +R625 +R92 +R12 +R49 +R83 +L44 +R21 +L701 +L43 +L37 +R925 +L13 +R448 +R46 +L11 +R11 +L589 +R52 +R91 +L42 +L42 +R784 +R553 +R47 +R514 +R90 +R98 +L96 +L88 +L291 +L78 +L33 +L45 +R20 +R9 +R989 +L35 +R801 +L198 +R43 +L39 +L27 +R11 +L27 +L18 +L43 +L58 +R24 +L31 +L92 +L61 +R61 +L764 +R64 +L26 +L42 +L19 +R87 +L767 +R33 +L66 +L38 +L62 +R23 +R77 +R96 +L42 +L79 +L20 +L376 +R21 +R13 +R422 +R65 +R90 +R54 +L54 +R10 +R29 +R30 +L70 +R85 +L43 +R43 +R26 +R30 +L59 +R60 +L11 +L74 +L12 +L34 +R568 +R67 +L35 +L64 +L36 +L35 +R35 +R221 +R79 +R5 +R45 +R769 +L59 +L60 +L67 +R912 +L45 +L20 +R20 +L43 +L57 +L80 +L20 +R53 +R653 +L46 +R81 +R59 +L67 +R1 +L93 +R37 +L78 +L740 +R740 +R956 +L32 +L96 +L28 +R695 +L95 +R859 +L39 +R62 +L96 +L1 +L85 +L835 +R81 +L98 +L48 +L50 +R50 +L264 +R64 +L11 +L35 +L69 +R15 +L24 +L76 +R99 +R90 +L46 +R62 +R33 +R735 +L11 +L25 +R863 +L60 +R67 +R511 +R82 +L58 +L49 +L93 +R71 +R29 +L18 +L482 +R85 +R53 +R187 +L25 +L72 +L28 +R523 +L219 +L910 +R28 +R78 +R68 +L847 +L21 +L9 +L74 +L17 +L45 +L755 +R489 +L389 +R717 +R36 +R23 +L79 +L31 +L60 +L31 +R15 +L90 +L78 +L9 +R62 +R32 +R93 +R389 +L3 +L51 +R67 +L414 +R12 +R78 +R22 +R40 +L40 +R73 +R6 +L726 +R57 +R90 +R23 +R877 +L58 +R58 +R306 +L31 +R659 +R87 +R368 +R11 +R40 +L27 +L21 +L92 +R90 +R13 +L3 +L33 +R33 +R85 +L1 +L883 +R99 +L75 +L26 +R95 +R72 +L76 +L90 +R93 +R614 +R67 +R60 +R55 +R93 +L55 +R66 +L893 +L23 +L77 +L198 +L99 +R459 +L63 +R13 +R17 +L12 +R56 +R27 +R36 +L46 +R24 +L96 +R46 +L93 +L83 +L942 +L46 +R53 +R47 +L6 +L94 +L661 +L39 +R4 +L84 +R80 +L745 +R20 +L75 +L28 +R79 +R73 +L381 +R93 +L260 +R21 +L75 +R478 +L61 +R93 +L32 +L95 +R95 +L1 +L99 +R8 +R43 +R61 +R933 +L13 +R70 +L78 +L24 +R150 +L84 +R2 +R79 +L47 +R55 +R5 +L60 +L98 +L302 +R94 +R4 +L15 +R73 +L2 +L28 +L23 +R16 +R81 +L78 +R36 +R88 +R54 +L80 +L20 +R419 +R88 +L7 +R64 +L464 +L77 +R39 +R531 +L838 +L89 +L66 +L619 +R417 +L98 +R331 +R94 +R75 +R60 +R40 +R40 +R60 +L878 +L22 +L29 +R64 +L35 +R67 +R33 +R16 +L73 +R72 +L15 +L513 +R87 +R85 +L63 +R82 +L72 +R27 +L33 +L24 +L534 +L26 +L8 +L15 +R10 +L29 +L54 +L20 +R48 +L48 +L67 +L34 +R33 +R658 +R10 +R55 +R7 +R38 +R1 +L73 +L63 +R22 +L25 +R708 +L40 +R906 +L36 +L284 +L26 +L35 +R945 +R8 +R33 +R759 +R42 +R86 +L428 +L649 +L1 +R90 +L640 +L64 +L36 +R87 +L957 +R770 +R35 +L35 +R592 +R8 +L40 +L33 +R92 +R81 +R16 +L24 +L557 +R51 +R16 +R398 +R92 +L52 +R41 +R419 +R8 +L108 +L70 +R68 +L598 +L171 +R914 +R57 +L313 +R156 +L96 +R87 +R66 +L81 +L95 +L79 +L168 +R423 +L50 +L50 +R56 +L553 +L88 +L69 +L34 +L791 +R79 +R248 +R50 +R10 +R92 +R36 +R11 +L44 +R596 +R72 +L63 +R29 +R63 +R94 +L94 +R36 +R11 +R85 +L24 +R6 +L514 +R146 +R30 +R46 +L62 +R702 +L62 +L502 +R2 +L70 +R57 +L98 +R311 +R97 +R83 +R20 +L575 +L69 +L88 +L68 +R85 +L48 +R257 +R6 +L64 +L428 +R146 +R46 +R32 +L52 +L38 +L79 +L63 +L461 +L8 +L31 +R40 +R41 +R19 +L33 +R56 +L23 +R67 +R45 +L12 +L995 +L47 +R5 +L16 +R57 +L4 +R43 +R39 +L89 +L34 +L88 +L71 +L9 +R14 +L6 +L43 +L91 +L65 +R40 +L40 +R75 +R25 +L356 +L44 +R27 +L27 +L37 +L55 +L8 +L98 +L2 +R34 +R373 +R55 +R93 +L55 +R79 +R96 +R625 +L28 +R28 +R191 +L91 +L96 +R123 +R69 +R64 +R27 +L62 +R91 +R384 +L86 +L914 +R62 +L13 +R493 +L5 +L977 +R940 +R75 +R10 +R47 +L35 +L97 +L3 +R3 +L49 +R89 +L889 +L4 +L917 +L36 +L60 +L33 +L36 +L65 +R36 +L74 +L37 +R39 +L89 +R26 +L53 +R952 +R24 +L224 +R13 +R18 +R19 +L63 +L65 +R19 +L41 +L86 +R85 +R1 +R62 +L62 +L39 +R82 +L643 +R74 +R85 +L59 +R96 +R71 +R475 +R52 +R80 +L74 +R81 +L29 +R81 +R367 +R634 +L26 +R60 +L40 +R92 +L20 +R20 +L20 +R34 +L13 +L82 +R23 +L934 +R41 +R11 +R720 +L32 +R132 +L149 +R82 +R94 +L27 +L99 +R734 +R36 +R21 +L48 +L44 +L45 +R845 +L95 +R95 +R18 +R82 +R87 +L31 +R44 +L736 +L64 +L30 +R31 +R90 +R88 +R47 +L917 +R29 +R47 +L80 +R95 +L75 +L47 +R74 +R92 +L44 +L15 +L278 +L7 +L53 +R53 +R557 +L57 +L10 +L90 +L63 +R20 +L15 +L43 +L99 +R64 +R84 +R752 +R50 +L50 +L523 +R3 +R20 +R80 +L37 +R55 +L35 +R98 +L89 +L72 +R66 +L34 +R94 +L15 +L11 +L44 +L72 +L2 +L382 +R50 +R50 +R11 +L11 +R599 +R1 +L21 +L66 +L7 +L6 +L26 +L20 +R46 +R517 +R20 +L8 +R90 +R81 +L174 +L803 +R77 +L61 +R54 +R7 +R81 +L81 +L10 +L28 +L62 +R22 +L23 +R40 +L481 +R436 +R30 +R76 +R71 +L40 +L11 +L60 +L60 +L842 +R74 +L719 +R47 +L60 +R45 +L78 +R10 +R17 +L131 +R91 +L954 +L70 +L2 +R972 +R41 +L58 +L146 +R759 +L930 +L21 +R52 +L97 +R58 +L52 +R48 +R13 +L354 +L583 +L30 +R776 +L385 +R9 +R1 +L1 +R86 +R41 +R48 +R25 +R33 +L33 +R55 +L89 +R320 +L86 +L69 +L31 +R8 +R92 +R56 +R63 +L134 +L85 +L50 +R60 +R792 +R67 +L83 +L36 +R70 +R71 +L478 +L143 +R30 +R81 +L53 +R42 +L49 +R40 +R339 +L94 +L6 +R62 +R3 +R831 +L55 +L54 +R13 +L817 +L95 +L2 +R61 +L26 +L62 +L85 +R38 +R88 +R75 +R56 +R19 +L50 +L53 +R53 +R69 +R656 +L607 +R80 +R38 +R57 +R722 +R85 +R72 +R25 +L97 +R865 +L80 +R115 +R88 +L60 +R72 +L34 +R34 +R50 +R50 +L25 +R25 +L67 +L84 +R31 +R3 +R11 +R6 +R52 +L252 +R98 +L72 +L39 +R155 +R79 +L21 +L34 +L66 +R16 +R420 +L31 +R12 +L67 +L97 +L47 +L35 +L61 +R285 +R5 +L64 +R528 +L264 +L6 +R335 +L29 +L73 +R97 +L389 +R32 +R433 +R89 +L89 +R10 +L10 +R989 +L70 +R81 +R44 +R56 +L248 +L952 +R43 +L25 +L18 +L55 +R42 +R77 +R136 +L88 +R50 +L71 +L291 +L43 +L457 +L44 +L77 +R120 +R30 +L26 +L36 +L67 +R623 +L923 +L895 +L35 +L270 +R66 +R34 +L52 +L66 +R18 +R538 +R29 +L9 +L58 +R9 +L10 +L85 +L5 +R23 +L341 +L63 +L28 +R96 +R4 +L94 +R294 +R911 +R51 +L62 +R40 +R43 +R33 +R42 +L78 +L80 +L96 +L20 +L84 +R64 +L16 +L48 +R79 +L32 +R53 +L40 +R12 +R2 +R11 +L85 +R27 +R39 +L33 +R22 +R45 +R76 +R98 +R73 +R95 +L42 +L27 +L57 +R84 +L55 +R55 +L61 +L68 +L48 +R57 +R57 +R50 +L87 +R19 +R81 +L57 +L43 +L8 +L92 +R88 +L81 +R52 +R11 +R69 +R61 +L22 +L78 +L9 +R9 +L8 +L32 +L13 +R33 +R21 +L11 +R39 +R25 +R25 +R45 +R48 +R8 +L27 +L48 +L13 +L15 +L29 +L36 +L41 +L35 +L27 +R46 +R24 +R49 +R37 +R10 +L47 +L49 +R28 +L43 +L25 +L21 +L32 +L35 +L48 +R12 +R7 +R39 +L27 +L8 +R3 +R18 +L27 +R6 +L34 +L28 +L12 +L1 +R42 +L14 \ No newline at end of file diff --git a/01/main.go b/01/main.go new file mode 100644 index 0000000..42c22c2 --- /dev/null +++ b/01/main.go @@ -0,0 +1,54 @@ +package main + +import ( + "fmt" + "os" + "strconv" + "strings" +) + +func main() { + if bytes, err := os.ReadFile("input"); err != nil { + panic(err) + } else { + content := strings.TrimSpace(string(bytes)) + + turns := strings.SplitSeq(content, "\n") + + position := 50 + zeroCount := 0 + + zeroPasses := 0 + + for turn := range turns { + left := turn[0] == 'L' + + if steps, err := strconv.Atoi(strings.TrimSpace(turn[1:])); err != nil { + panic(err) + } else { + for range steps { + if left { + position-- + } else { + position++ + } + + position = (position + 100) % 100 + + if position == 0 { + zeroPasses++ + } + } + + if position == 0 { + zeroCount++ + } + + fmt.Println() + } + } + + fmt.Println(zeroCount) + fmt.Println(zeroPasses) + } +} diff --git a/01/test b/01/test new file mode 100644 index 0000000..d03fad7 --- /dev/null +++ b/01/test @@ -0,0 +1,10 @@ +L68 +L30 +R48 +L5 +R60 +L55 +L1 +L99 +R14 +L82 \ No newline at end of file diff --git a/01/wrongs b/01/wrongs new file mode 100644 index 0000000..7f4b987 --- /dev/null +++ b/01/wrongs @@ -0,0 +1,2 @@ +6586 +6350 \ No newline at end of file