From 36582f08335bd56d676bd70cceffc0489ad6f987 Mon Sep 17 00:00:00 2001 From: cat Date: Mon, 1 Dec 2025 23:57:59 +0200 Subject: [PATCH] Day 1 solved --- Day1/Question1/input | 4126 ++++++++++++++++++++++++++++++++++++++ Day1/Question1/main.cpp | 18 + Day1/Question2/input | 4126 ++++++++++++++++++++++++++++++++++++++ Day1/Question2/inputTest | 11 + Day1/Question2/main.cpp | 37 + 5 files changed, 8318 insertions(+) create mode 100644 Day1/Question1/input create mode 100644 Day1/Question1/main.cpp create mode 100644 Day1/Question2/input create mode 100644 Day1/Question2/inputTest create mode 100644 Day1/Question2/main.cpp diff --git a/Day1/Question1/input b/Day1/Question1/input new file mode 100644 index 0000000..aa444f5 --- /dev/null +++ b/Day1/Question1/input @@ -0,0 +1,4126 @@ +R26 +L12 +L47 +L2 +R15 +R39 +L11 +R26 +R22 +R23 +L16 +R45 +R23 +R28 +R12 +R32 +L14 +R20 +R38 +L26 +R26 +R50 +R19 +R28 +L4 +L17 +R47 +L18 +R34 +R37 +L12 +R27 +R47 +R3 +R4 +R13 +L19 +L44 +R49 +R27 +L28 +R11 +R9 +R44 +R13 +L13 +R37 +R24 +L26 +R64 +L3 +L72 +L7 +L21 +L80 +R80 +R58 +L21 +R81 +R33 +L51 +L58 +R58 +R32 +R81 +L13 +R85 +R15 +L62 +R62 +L91 +L11 +L17 +L81 +R62 +L40 +L46 +R24 +L37 +R39 +L24 +L78 +L27 +R27 +R55 +L60 +L2 +L81 +R49 +R39 +R66 +R21 +R97 +R73 +L37 +L18 +R11 +L72 +R38 +L78 +R99 +L5 +L139 +R324 +L80 +L10 +L48 +L40 +R14 +R24 +L64 +R94 +R79 +L77 +L46 +L26 +R19 +R988 +L50 +L66 +R64 +L944 +L79 +L132 +R11 +R3 +R36 +R3 +R49 +R70 +L72 +L32 +R335 +R97 +R62 +R640 +R98 +R27 +L27 +R648 +L48 +L82 +L18 +R10 +R15 +L25 +L38 +R871 +R59 +L92 +L824 +L97 +R69 +L548 +R50 +R14 +R936 +L40 +R78 +L638 +L4 +L96 +R72 +R28 +R688 +R88 +R24 +L70 +L33 +L57 +R60 +L78 +R81 +R36 +L659 +L19 +R39 +R423 +L41 +R45 +L27 +R14 +R55 +R343 +R68 +L66 +L597 +L17 +R61 +L69 +L44 +R92 +R60 +R52 +L73 +R8 +R21 +R92 +R62 +L5 +R493 +R35 +R58 +R635 +L78 +L25 +L29 +R98 +L44 +L34 +L55 +R45 +L17 +L56 +R17 +L60 +L40 +R97 +L88 +R991 +L437 +L10 +R151 +R37 +L341 +R157 +R402 +R41 +R51 +R95 +R954 +L51 +R851 +R49 +L49 +L48 +R94 +R6 +L97 +L58 +L97 +L337 +L83 +R10 +R60 +L43 +L94 +R30 +L6 +R60 +L47 +L65 +L78 +L25 +R45 +L27 +R2 +R42 +R42 +L90 +L853 +L75 +L69 +R1 +L71 +R91 +L53 +L67 +R184 +R1 +R225 +L38 +R328 +R36 +L57 +R935 +R93 +L5 +L38 +L64 +L33 +L203 +L307 +L407 +R4 +R85 +R161 +L54 +R17 +R86 +L49 +R59 +L829 +R33 +L63 +R72 +R6 +L64 +L39 +L54 +L21 +L37 +R37 +R94 +L94 +L73 +R73 +R54 +L94 +L60 +L51 +R72 +R18 +L21 +L18 +L63 +L87 +L50 +R20 +R80 +L63 +R46 +R83 +R60 +L3 +R33 +L56 +R298 +L62 +R90 +R874 +L17 +L83 +L958 +R23 +R79 +L58 +L909 +R578 +R62 +L36 +R7 +L88 +L42 +L7 +L43 +L89 +L10 +R36 +L45 +R4 +R96 +L31 +L88 +R88 +L69 +L40 +R79 +R661 +R71 +R29 +L7 +R307 +R5 +R62 +L17 +R3 +R81 +R71 +L38 +R36 +L503 +R58 +R803 +L45 +L15 +L208 +R88 +R47 +L528 +R26 +L76 +R466 +R595 +R968 +L79 +L92 +R2 +L99 +L98 +L44 +L767 +R4 +L322 +L41 +L80 +R215 +R22 +R5 +R781 +L18 +L663 +L14 +R82 +L64 +L82 +R963 +R582 +R33 +L58 +L96 +L20 +L44 +R13 +R46 +L46 +R38 +L30 +L8 +L73 +R16 +R82 +L634 +L221 +L570 +R27 +R998 +L8 +R583 +L358 +R7 +R580 +L79 +R63 +L77 +R96 +L82 +L950 +R70 +R39 +L9 +L13 +L40 +R53 +L20 +R20 +R26 +R74 +R78 +L78 +L42 +L44 +L14 +R64 +L40 +L81 +R57 +R66 +R85 +R49 +R49 +R451 +L24 +R58 +R66 +L78 +R490 +R223 +R28 +L964 +L286 +L13 +L84 +L13 +R63 +R934 +L371 +R823 +R69 +R79 +R99 +L82 +R54 +R91 +R38 +R41 +L41 +R10 +R790 +R87 +L87 +R292 +R60 +R28 +R20 +L14 +L21 +R35 +R54 +R892 +R76 +R76 +L98 +L33 +L67 +R24 +L24 +L20 +L54 +L26 +L5 +L903 +L8 +R97 +L597 +R281 +R35 +R4 +L1 +R97 +R79 +L80 +L569 +R371 +L814 +R67 +R3 +L29 +L28 +L7 +R7 +R32 +L4 +L16 +R88 +R64 +L792 +L371 +L92 +R91 +R60 +R40 +R8 +L65 +L43 +R465 +L53 +R298 +L10 +R19 +R381 +L74 +L36 +L16 +L74 +R585 +R50 +R45 +R30 +R90 +L95 +L8 +R403 +R65 +L23 +L27 +R49 +L76 +R39 +R21 +R772 +R41 +L61 +L69 +R69 +L18 +L182 +L83 +R42 +R41 +R40 +R60 +L29 +R51 +L38 +L750 +L434 +R51 +L83 +R33 +L601 +L99 +L1 +R51 +L51 +R62 +L5 +R77 +L34 +L58 +R58 +R20 +L33 +R709 +L65 +L31 +L36 +L7 +R89 +L46 +R294 +L30 +R45 +L9 +L444 +L62 +L94 +L25 +L75 +R185 +R83 +L3 +L48 +L17 +R79 +L221 +L925 +R27 +R98 +R742 +L69 +L31 +R91 +L7 +R16 +R87 +L13 +L74 +R7 +R96 +R516 +R981 +L93 +R44 +R958 +R25 +R68 +L981 +L47 +R26 +L41 +L707 +R295 +L85 +R981 +R46 +R20 +L9 +R96 +L396 +R895 +L95 +R86 +L49 +R76 +L13 +L78 +R26 +R62 +R66 +L441 +L13 +R78 +R71 +R44 +L89 +R471 +R42 +R37 +L76 +R99 +L921 +L78 +L24 +L38 +R862 +L3 +R3 +R59 +R310 +L960 +R15 +L48 +R24 +R53 +R47 +L56 +R477 +R123 +R13 +R573 +R78 +R79 +R13 +L82 +L8 +R89 +R51 +L50 +R3 +R899 +R98 +L59 +L441 +R16 +R84 +R96 +L27 +L69 +L58 +R69 +R47 +L858 +L51 +L49 +L997 +R50 +L53 +L65 +R91 +R64 +L90 +L45 +R82 +R1 +R74 +R88 +R49 +R51 +L983 +R84 +L82 +L347 +R137 +R91 +R4 +R683 +R157 +R17 +L61 +R14 +L14 +L28 +R33 +L953 +R48 +R211 +L20 +R18 +R491 +L54 +R93 +L39 +R79 +R45 +R76 +R335 +R94 +R136 +R35 +R718 +L62 +R51 +L7 +R4 +L4 +R58 +R462 +R80 +R32 +R44 +L476 +R705 +L84 +L21 +L78 +R4 +R5 +R669 +L78 +L22 +R64 +R57 +L889 +L78 +L40 +R486 +R21 +R79 +L91 +L8 +R709 +L10 +R546 +L46 +R33 +R80 +L30 +R54 +R63 +R64 +L64 +L90 +L910 +L8 +R19 +R19 +L30 +R84 +R73 +R443 +L49 +R41 +L92 +L88 +R9 +R54 +L83 +L92 +L621 +L79 +L9 +L28 +R37 +L182 +L18 +R16 +L728 +L79 +L44 +R35 +R2 +L27 +L86 +R31 +L6 +R32 +R670 +R617 +L50 +R17 +L68 +L732 +R626 +L2 +L894 +R10 +L988 +R49 +L1 +R779 +R24 +L3 +L59 +R34 +L75 +L916 +L84 +L671 +R71 +L395 +L5 +R99 +R1 +R88 +L79 +R280 +R11 +R67 +L67 +L25 +L93 +R49 +R92 +L23 +L141 +L59 +L196 +L4 +R33 +L43 +R428 +L318 +R615 +R85 +R67 +L81 +L79 +R388 +R5 +R503 +L144 +L31 +L5 +R621 +R56 +L63 +R713 +R41 +L791 +L461 +R61 +R48 +R33 +L12 +R47 +L526 +L90 +L52 +R59 +L67 +R60 +R76 +L844 +L32 +L58 +L617 +R52 +R21 +L98 +L96 +L86 +R22 +R48 +L1 +L218 +R31 +L63 +R36 +R87 +R87 +R53 +L941 +R41 +R19 +L19 +R64 +R36 +L6 +L7 +L87 +R20 +R1 +R96 +R257 +L15 +L59 +R78 +L881 +R35 +R68 +L75 +R792 +L9 +L8 +R1 +L85 +L16 +L144 +R844 +R80 +R98 +R4 +R974 +R44 +L12 +R40 +L28 +R32 +L80 +L71 +L81 +R76 +R24 +L48 +L8 +R56 +L19 +L81 +R36 +L33 +R97 +R81 +L75 +L6 +R25 +R21 +R35 +L4 +L93 +R89 +L72 +R99 +L64 +L892 +L60 +L184 +R50 +L50 +L39 +L61 +R24 +L770 +L91 +R37 +L6 +L94 +R86 +L24 +R15 +R51 +R16 +L216 +L16 +R591 +R531 +L64 +L81 +R911 +L54 +R47 +L49 +L16 +R72 +L21 +L579 +R83 +L27 +L56 +L769 +R69 +L964 +L34 +R26 +L24 +R443 +L47 +L52 +R52 +L85 +R8 +L776 +R53 +R28 +L65 +L62 +R5 +L81 +L25 +R679 +L99 +R26 +L892 +L14 +R71 +R29 +R62 +L62 +L21 +L19 +R40 +L292 +L8 +R89 +R30 +R83 +R45 +R615 +R38 +R99 +R1 +R11 +R83 +R79 +R503 +R895 +L25 +L169 +R44 +L35 +L86 +L32 +R32 +L16 +L84 +R38 +R362 +L455 +R55 +L392 +R92 +L6 +R97 +R419 +L10 +R24 +R38 +L68 +R6 +L392 +L16 +R8 +L5 +R5 +L71 +L18 +R24 +L35 +L60 +R44 +L64 +R422 +R44 +R54 +L20 +L78 +R913 +L330 +L25 +L47 +R47 +L95 +L94 +R189 +L31 +R7 +L86 +L62 +L28 +R48 +R71 +L870 +R84 +L29 +L4 +R40 +R60 +R22 +L22 +L99 +L301 +R68 +R8 +R57 +R81 +L14 +R16 +R84 +R55 +R99 +L40 +L52 +L71 +R11 +L68 +L34 +L234 +L45 +L24 +R3 +L42 +L35 +R11 +R66 +L75 +R54 +R19 +L71 +L554 +L93 +R9 +R11 +R957 +L26 +R69 +L87 +R63 +R624 +L26 +R70 +L13 +L92 +L33 +L706 +R82 +L48 +L82 +R76 +L16 +L112 +L593 +L63 +L44 +R65 +L434 +R76 +L7 +R40 +R60 +R851 +R49 +L70 +L33 +R614 +R89 +R532 +L69 +R29 +R48 +L44 +R225 +L57 +L172 +L292 +R831 +L31 +R44 +R56 +R229 +R7 +L64 +R39 +R38 +L1 +R52 +L23 +L16 +L61 +R68 +R57 +R78 +R46 +L49 +R320 +L39 +R259 +L523 +R569 +R698 +L84 +L1 +L98 +R99 +R57 +L78 +L12 +L67 +L43 +L57 +L60 +L55 +L887 +R49 +R53 +R25 +R26 +L51 +L99 +R99 +L33 +L28 +L39 +R14 +L614 +L66 +R266 +R145 +R66 +L69 +L27 +L15 +L91 +R733 +L795 +R91 +L45 +L44 +L29 +R878 +L87 +L21 +R10 +L43 +L55 +R20 +L94 +L59 +R4 +R98 +L66 +R199 +L34 +L70 +L54 +L46 +R83 +R17 +R667 +R96 +L6 +L187 +R146 +R84 +R86 +R40 +R74 +R61 +R53 +L14 +L93 +R33 +L9 +R569 +L20 +R7 +R63 +R16 +R82 +L34 +L92 +R78 +R95 +R905 +L82 +R614 +R70 +R98 +L18 +R99 +L536 +R64 +R87 +L81 +L50 +L19 +R95 +L41 +L20 +R20 +L87 +R587 +L22 +R322 +R17 +R998 +L14 +L701 +L90 +R66 +R72 +R690 +L59 +R91 +R59 +R27 +L62 +R94 +L80 +L46 +R29 +L91 +L51 +L61 +L88 +R42 +R90 +L811 +L58 +L63 +R355 +R877 +R568 +R482 +R7 +R219 +L8 +R551 +L87 +R82 +L611 +R13 +R86 +R82 +L16 +L65 +R65 +L81 +L19 +R34 +L40 +L74 +R80 +L628 +R28 +R42 +R86 +R72 +L654 +R54 +L141 +R47 +R32 +L55 +L83 +R78 +R22 +R3 +L92 +L37 +R17 +L59 +L32 +L5 +L7 +L6 +R18 +L73 +L567 +R7 +R33 +L64 +R33 +R38 +R70 +R23 +R21 +R71 +R8 +L97 +R26 +R370 +R34 +L93 +L85 +L39 +R184 +L66 +R185 +L419 +L65 +L95 +L440 +L81 +R81 +L6 +R90 +R846 +R612 +R58 +R37 +L37 +L29 +R29 +L89 +R89 +L601 +R1 +R41 +R59 +R153 +L86 +L67 +R27 +L22 +L905 +R28 +R847 +R25 +R321 +R431 +L26 +L26 +R28 +L98 +R70 +L37 +R37 +R71 +L498 +R968 +L41 +L94 +R4 +L21 +R80 +L69 +L56 +R41 +R15 +L70 +R55 +R48 +L33 +R681 +R5 +L65 +R28 +L67 +R339 +R479 +R29 +L959 +L70 +R43 +L43 +L829 +L83 +R26 +L12 +R98 +R90 +L161 +L77 +L74 +L51 +R72 +R85 +L45 +R61 +R34 +L99 +R65 +R340 +L40 +L73 +L64 +R37 +L36 +L26 +L838 +L438 +R47 +L309 +L56 +L12 +R684 +R58 +L74 +L12 +L188 +L219 +L482 +R1 +R523 +R77 +R83 +L87 +R457 +R77 +L30 +L513 +R78 +R97 +R9 +L13 +L58 +L32 +R13 +L981 +L57 +L22 +L21 +L98 +L2 +R32 +L50 +R18 +R61 +L31 +L12 +L742 +R846 +L22 +R958 +R86 +L81 +R27 +L57 +R67 +L466 +R266 +L81 +L76 +L58 +R15 +R76 +L81 +R55 +L161 +R11 +R17 +L63 +L256 +L552 +R54 +L69 +R22 +L53 +L906 +R6 +R8 +R27 +L335 +L59 +L874 +L37 +R34 +R59 +R77 +R801 +R66 +R35 +L26 +L73 +R97 +L18 +L82 +L716 +R16 +R12 +R88 +R95 +R95 +R10 +R16 +R37 +L53 +L26 +L562 +L12 +L2 +L198 +R68 +R86 +R73 +L30 +R403 +L81 +R681 +R56 +R21 +L88 +L974 +R85 +L99 +L99 +R99 +L1 +L77 +R77 +L98 +R98 +R70 +R13 +L83 +R53 +L20 +L33 +L88 +R4 +L416 +R34 +R12 +L33 +R87 +L77 +R19 +R13 +R45 +R29 +R671 +L97 +R80 +L83 +R25 +R77 +R52 +L781 +L45 +R72 +R34 +R366 +L778 +R24 +L43 +R63 +R94 +L60 +R86 +R32 +R22 +L640 +R412 +R52 +L4 +R40 +R53 +L53 +R39 +L14 +L25 +R17 +R83 +L49 +L25 +L8 +R75 +L93 +L21 +L50 +L29 +L80 +R880 +L26 +R26 +L186 +L21 +R32 +L89 +R969 +L62 +L943 +L60 +R60 +R66 +R34 +R95 +L95 +R75 +R608 +L283 +R16 +R84 +L63 +R63 +R69 +L10 +L59 +R38 +R369 +R93 +L73 +L838 +R48 +R248 +L43 +L45 +L5 +L90 +R77 +L77 +L57 +R90 +R65 +R636 +L36 +L41 +R136 +R5 +R31 +L631 +R117 +L68 +L39 +R90 +R43 +R857 +R7 +R432 +L18 +R66 +L16 +R29 +L643 +L14 +R1 +R56 +R53 +R51 +L91 +R76 +L41 +L50 +R93 +R9 +R13 +L2 +R126 +L84 +L11 +L29 +R95 +L67 +L41 +R38 +R62 +L44 +R90 +R47 +R7 +L24 +R685 +R39 +L51 +L99 +R50 +R6 +L6 +R92 +R8 +R136 +R17 +L85 +L68 +L62 +L38 +L234 +L27 +L565 +R714 +L88 +L74 +L47 +L24 +R65 +R80 +L94 +R94 +R26 +R74 +L19 +R2 +R59 +R61 +R97 +R14 +L72 +R21 +R22 +L349 +L60 +R86 +L24 +R16 +R46 +R78 +R22 +R899 +L11 +L88 +R382 +L231 +R1 +R91 +R34 +L379 +R69 +R83 +R79 +R95 +R21 +R691 +L41 +L929 +R945 +R40 +L325 +R74 +L12 +R749 +L85 +L47 +L554 +R49 +L97 +L3 +L59 +R17 +L2 +R12 +R68 +L36 +R6 +R999 +L5 +L12 +L61 +L29 +R14 +R40 +L52 +L37 +L75 +R79 +L96 +L60 +L35 +R24 +R843 +R57 +L27 +R83 +R44 +R61 +R39 +R20 +L420 +R82 +L716 +R50 +L48 +L28 +L40 +R89 +R53 +R564 +R94 +L34 +L66 +L37 +L63 +L571 +R28 +R55 +L12 +R77 +R54 +L331 +R139 +L20 +R89 +R92 +R67 +R35 +L428 +L235 +L88 +R49 +R42 +R58 +L109 +L91 +L28 +L544 +L28 +R1 +L25 +L76 +R28 +L54 +L37 +L27 +L55 +L55 +R77 +R34 +L61 +L963 +L26 +R39 +L36 +R14 +L538 +R60 +R47 +R45 +R9 +R611 +L37 +R25 +L25 +L75 +R706 +R6 +R88 +R217 +L43 +R72 +R62 +L57 +L51 +L89 +L11 +R47 +R56 +R32 +L135 +R70 +R34 +L4 +L91 +L72 +L91 +L19 +R73 +L243 +R51 +R92 +R23 +L10 +L75 +R18 +R3 +R1 +L272 +L8 +L40 +R60 +L278 +L79 +L43 +L920 +R25 +R922 +R70 +L33 +L64 +R68 +L82 +R14 +R10 +R873 +R77 +R39 +L70 +R65 +R491 +L17 +L68 +L56 +L429 +R40 +R45 +R46 +L26 +R92 +R22 +L34 +R96 +R28 +R76 +L58 +L47 +L53 +R23 +R614 +R21 +L38 +R38 +R135 +L33 +R598 +L7 +L55 +R62 +R924 +R21 +L69 +R81 +L57 +L68 +R733 +L65 +L85 +R190 +R95 +L466 +R19 +L1 +R24 +L829 +R90 +L71 +L53 +L23 +R10 +R77 +L677 +L746 +L45 +R65 +R26 +R937 +L71 +R30 +L492 +L65 +L86 +R993 +L46 +L59 +R84 +L25 +L8 +L692 +L82 +L41 +R23 +L99 +R99 +L19 +L98 +R309 +R81 +R370 +R6 +L64 +R15 +L771 +R978 +R93 +L95 +R85 +R69 +R41 +R627 +L11 +L68 +L48 +L3 +R3 +L67 +L818 +R79 +R6 +R47 +L517 +L84 +L53 +L39 +R22 +L72 +R57 +R22 +R17 +L19 +L81 +L5 +L117 +L978 +L23 +L40 +L5 +R68 +R60 +L60 +L40 +L48 +R369 +L759 +L22 +R29 +L11 +R582 +L5 +L95 +L65 +R677 +R788 +R49 +R151 +L69 +L13 +L18 +R691 +L91 +L48 +L70 +R518 +L33 +R78 +R55 +R60 +L130 +L30 +R15 +R976 +L98 +L93 +L88 +R888 +L38 +R242 +L104 +L99 +R12 +R77 +R10 +L53 +L47 +R36 +R283 +L19 +L851 +L27 +L59 +L45 +L40 +L78 +L264 +R639 +R77 +R23 +R51 +R66 +L97 +L23 +L72 +R8 +R35 +L36 +R60 +L52 +R85 +R27 +L93 +L249 +R39 +R176 +R58 +L258 +L684 +L216 +L41 +R72 +R69 +L45 +R45 +R393 +L93 +L59 +R94 +R71 +R68 +L74 +R17 +L56 +L35 +L26 +L544 +L64 +L63 +L4 +R65 +L90 +L961 +R79 +R82 +L20 +R48 +R72 +L62 +R6 +L44 +L19 +L88 +R51 +R23 +L67 +R568 +L262 +R94 +L98 +R98 +R45 +L31 +L14 +L77 +R77 +L14 +L155 +R45 +L28 +L91 +R94 +R649 +L71 +L58 +L71 +L17 +R466 +L49 +R783 +L83 +R6 +R629 +R65 +L626 +L74 +L70 +L33 +R89 +R314 +L95 +R50 +R545 +L29 +L71 +R724 +L88 +L516 +R80 +R58 +R85 +R57 +R754 +R648 +L43 +R795 +R63 +L17 +L97 +L5 +R127 +L25 +R84 +L84 +L87 +L13 +R59 +L17 +R58 +R64 +L64 +R529 +L58 +R29 +L45 +L55 +R20 +L602 +L14 +L35 +R41 +R90 +R34 +R72 +L68 +R62 +R94 +L594 +L95 +L5 +L27 +L60 +L53 +R940 +R73 +R27 +L58 +L42 +L39 +R6 +L94 +R69 +R9 +L82 +R173 +L42 +R61 +R39 +R61 +R26 +R92 +L241 +R80 +R89 +L26 +R69 +R50 +R1 +R913 +R86 +L22 +R73 +R24 +L75 +R602 +L2 +R99 +R30 +L304 +R76 +R82 +L96 +R13 +L20 +R20 +R62 +R62 +R34 +R242 +L97 +L3 +L99 +L1 +L2 +L92 +R29 +R88 +L853 +L73 +R603 +L10 +L59 +R69 +R14 +R57 +L16 +L355 +L15 +L5 +L980 +R12 +L16 +L4 +L24 +R595 +R37 +R48 +R19 +L67 +R263 +L63 +L31 +R22 +R9 +R352 +L52 +L48 +L52 +R39 +R5 +R56 +L62 +L38 +L657 +L49 +L94 +R123 +R25 +L48 +L7 +R37 +L26 +R96 +R497 +L97 +R857 +L9 +L51 +R3 +L33 +R652 +L53 +L55 +L79 +R68 +R92 +L22 +R330 +L23 +L370 +R93 +R205 +L20 +R90 +L2 +L56 +L17 +R477 +L58 +R81 +R98 +R2 +R42 +L42 +L64 +R64 +R83 +L33 +L50 +R55 +R45 +R81 +L81 +L34 +R93 +L12 +R30 +L77 +R48 +R52 +R498 +R21 +R95 +L518 +R904 +L99 +L10 +R50 +R59 +R97 +R78 +L425 +L450 +R26 +R84 +R90 +R236 +L36 +R60 +L68 +L62 +L86 +R74 +L218 +L37 +L11 +R168 +L52 +R32 +L96 +L21 +L60 +R76 +L99 +L17 +L56 +R673 +R995 +R45 +L82 +R26 +L184 +L36 +R36 +L13 +L587 +R97 +L99 +R2 +L587 +L97 +R84 +L66 +R3 +R63 +L783 +R35 +R42 +R271 +L6 +R825 +L97 +R35 +L5 +R7 +R32 +R43 +R20 +L19 +R49 +R12 +R66 +L13 +L11 +R97 +L4 +R38 +R866 +R21 +R61 +L68 +R86 +R23 +L62 +L1 +R40 +L73 +L24 +L38 +L65 +R47 +R53 +L87 +R71 +R16 +R12 +L79 +R14 +R47 +L94 +R39 +L77 +R32 +L94 +R95 +R422 +L58 +L418 +R17 +R38 +R4 +L79 +R79 +R77 +L77 +L717 +L32 +R82 +R746 +R21 +L2 +L98 +L32 +L42 +L46 +R22 +R298 +R99 +R19 +R82 +L260 +L40 +L49 +L77 +R62 +L22 +R10 +R76 +R371 +L229 +L37 +L150 +L55 +L17 +R36 +R32 +R49 +L95 +L805 +R24 +L24 +R33 +R667 +L57 +R50 +R7 +R86 +R74 +R19 +R92 +L49 +R78 +R176 +R86 +R338 +L49 +R18 +L69 +R51 +L251 +R904 +R96 +R14 +L72 +R59 +R99 +R58 +R270 +R92 +L68 +L51 +L771 +L630 +R246 +R454 +R9 +L66 +L62 +R19 +R55 +R83 +R21 +R61 +R380 +R40 +L50 +L310 +R285 +R44 +R291 +R43 +L43 +L35 +L65 +L257 +R404 +R53 +L32 +L5 +R3 +R3 +R22 +L220 +R14 +L37 +R29 +R460 +L14 +L84 +R2 +L34 +L47 +L320 +R27 +R33 +L18 +L81 +R85 +L86 +R98 +L764 +R3 +L34 +R72 +R819 +L94 +R26 +R68 +R94 +L88 +L53 +L47 +R928 +L70 +R433 +L91 +R966 +L50 +R684 +L79 +L76 +L45 +L4 +R37 +R67 +L91 +R1 +R924 +L34 +L725 +L543 +L79 +L53 +L38 +L62 +L28 +R99 +R83 +R46 +R44 +L56 +R36 +L24 +R422 +L22 +R36 +R27 +R37 +R905 +L94 +L56 +R37 +R26 +R11 +R530 +L59 +R74 +L974 +L23 +R6 +R997 +L11 +R431 +R10 +L10 +L802 +R18 +L758 +R642 +R93 +R7 +R56 +L26 +L58 +R35 +R7 +L98 +L609 +R535 +L36 +L53 +L64 +R21 +R72 +L82 +R89 +L89 +L50 +R50 +R74 +R818 +L79 +R87 +R81 +R28 +L81 +L75 +L6 +L67 +L53 +L25 +L2 +L9 +L114 +R83 +L60 +R64 +R464 +L28 +R5 +L92 +R933 +L33 +R87 +R91 +L72 +L97 +R501 +R817 +L32 +R92 +R481 +R19 +L56 +R8 +R48 +L22 +R22 +R8 +R46 +R93 +R160 +L513 +R6 +L20 +R31 +L711 +L129 +R339 +L10 +R83 +L283 +R63 +L55 +L35 +R24 +R3 +L71 +R25 +R82 +L36 +R67 +R33 +R116 +L539 +L77 +R30 +R23 +L30 +L27 +R4 +L62 +R4 +L42 +R47 +L92 +L2 +L198 +R91 +R54 +L247 +L81 +R28 +L99 +R99 +L85 +R85 +L40 +L26 +L60 +R17 +R15 +L306 +R6 +R94 +L75 +L25 +L60 +R19 +R57 +R1 +L17 +R93 +R76 +L27 +L15 +L27 +R31 +R67 +L32 +R34 +R77 +R23 +R59 +R7 +R98 +R95 +R61 +R18 +L69 +L69 +R47 +L38 +R2 +R88 +R82 +R15 +R58 +L47 +R183 +L20 +R670 +R33 +R59 +L35 +R23 +R31 +R749 +R74 +L74 +L42 +R42 +L10 +R220 +L10 +L51 +L49 +R69 +L28 +R416 +R599 +L23 +R53 +L49 +L37 +R27 +R73 +R35 +R25 +R8 +R932 +L11 +R9 +R219 +L17 +R29 +L37 +L78 +R986 +R1 +L19 +L53 +R71 +R37 +R370 +L806 +R70 +L2 +L69 +R46 +R54 +L28 +R31 +R45 +L85 +R43 +L81 +R121 +L46 +R34 +R25 +R99 +L97 +R34 +L69 +R74 +R411 +R89 +R97 +L24 +L73 +R33 +R765 +L614 +R16 +L64 +R64 +R99 +R24 +L623 +R312 +R288 +R89 +R98 +L92 +R98 +L36 +R88 +L52 +L93 +L31 +R146 +L22 +R7 +L94 +R61 +L101 +R43 +R53 +L94 +R32 +L285 +L936 +R21 +R22 +L22 +L55 +L8 +R837 +L74 +R91 +R173 +R36 +L96 +L25 +L26 +R52 +L929 +L76 +R54 +L30 +L324 +L47 +R70 +R77 +L87 +R75 +L688 +L19 +R61 +R58 +L28 +L72 +R68 +R85 +L14 +R59 +L84 +R43 +R399 +R83 +L39 +L895 +R95 +R45 +L19 +R21 +L9 +L638 +R45 +L45 +R899 +R6 +L43 +L4 +R360 +R835 +L57 +L77 +L7 +R380 +L92 +L78 +R82 +L93 +R54 +R35 +L84 +R84 +R56 +L926 +R543 +R27 +R413 +R87 +L40 +L8 +L52 +R76 +L80 +L12 +R4 +R33 +R38 +L76 +L144 +R61 +L17 +R81 +L64 +R35 +R47 +L14 +L8 +L60 +R93 +L93 +L95 +R43 +R52 +R5 +L66 +R61 +L29 +R119 +R50 +R78 +R12 +R21 +R49 +L31 +L69 +L39 +L74 +R56 +R95 +L4 +R17 +R49 +L55 +R974 +L219 +L80 +L20 +L85 +L27 +R41 +R84 +R75 +R12 +L44 +L256 +L92 +L68 +R60 +L592 +L51 +R88 +R96 +R59 +R22 +L22 +L37 +R37 +R91 +R9 +R59 +R83 +R58 +R47 +L93 +L167 +L55 +R4 +L79 +L96 +R41 +R38 +R401 +R24 +R35 +L9 +R609 +L68 +R46 +R923 +L62 +L445 +R6 +R953 +R7 +L55 +L65 +R47 +R17 +L291 +R187 +R88 +L61 +L27 +R491 +L91 +L61 +L39 +R36 +R78 +R86 +R75 +L17 +R778 +R94 +L730 +L41 +L27 +R5 +L37 +L47 +L73 +R20 +R730 +R83 +R67 +L880 +L57 +R97 +L58 +R963 +L45 +R30 +R109 +L39 +L77 +L223 +R97 +L45 +R47 +L99 +L898 +L43 +L59 +L71 +R12 +L41 +L94 +L27 +R21 +L2 +L498 +R378 +R18 +R68 +R36 +R72 +R983 +R45 +R81 +L34 +R53 +R26 +L26 +L574 +R74 +L28 +L72 +L17 +L98 +R87 +R50 +R74 +L96 +L474 +R974 +L32 +L68 +L914 +L584 +R98 +L54 +L813 +R67 +L79 +L57 +R298 +R92 +L29 +R75 +R40 +R124 +L64 +R181 +L81 +R854 +R46 +R57 +L57 +L75 +L58 +L18 +R51 +R46 +R70 +L16 +R3 +R77 +R27 +R93 +L5 +L95 +R85 +R954 +R261 +L94 +R94 +R99 +L899 +L25 +L75 +R5 +L80 +R75 +R59 +L47 +R852 +R36 +R23 +L440 +L77 +R94 +R19 +L66 +R99 +R15 +R99 +R468 +L9 +L825 +R677 +L277 +L51 +L49 +R48 +R52 +R99 +L60 +L45 +R6 +L922 +L763 +L20 +L18 +L169 +R5 +L84 +R473 +L2 +R519 +R481 +R63 +L10 +L53 +R57 +R66 +L42 +R769 +R66 +R75 +R26 +L55 +R38 +L18 +R84 +L66 +L42 +R344 +R25 +L689 +R94 +L32 +L821 +L15 +R63 +R10 +R49 +L86 +L92 +R17 +R82 +R57 +L30 +L61 +L24 +L8 +L60 +R919 +L76 +L2 +R26 +R977 +R22 +L91 +L93 +R24 +R13 +L80 +L8 +R73 +L81 +R98 +R98 +L69 +R18 +L56 +L34 +L31 +R872 +L46 +L26 +L71 +R342 +L829 +R30 +L26 +L67 +R93 +L623 +L77 +L38 +L62 +L8 +L92 +R54 +R84 +L38 +R683 +R17 +L68 +L59 +R27 +L52 +L61 +R306 +L93 +R31 +L94 +L40 +R19 +R820 +L51 +L20 +R35 +R21 +L21 +R67 +L12 +L31 +L32 +R50 +R19 +L48 +R87 +R569 +L22 +L38 +R24 +L53 +L80 +R98 +L98 +R7 +R5 +L355 +L17 +R60 +L875 +R58 +R70 +R994 +R53 +L17 +L531 +R748 +R848 +L548 +R80 +L68 +R88 +L197 +L23 +L80 +R86 +L86 +R76 +L76 +R67 +L475 +R52 +L39 +L843 +R14 +L291 +L78 +R339 +R591 +L3 +R466 +R3 +L39 +L2 +L76 +R193 +R21 +L26 +R375 +L95 +R42 +L96 +L19 +L71 +R413 +R35 +L83 +L62 +R87 +R971 +L63 +R42 +R850 +R2 +L902 +L33 +L1 +R575 +R59 +R63 +L47 +L70 +L43 +R74 +L69 +R92 +R48 +L48 +R26 +R59 +R95 +L60 +L66 +L40 +R86 +L81 +R96 +L15 +R73 +L68 +R2 +R93 +L25 +L75 +L12 +R12 +L93 +L59 +R52 +L11 +R46 +L23 +R53 +R629 +R46 +L74 +R96 +R657 +L14 +R46 +L99 +R48 +R980 +R51 +L7 +L99 +R52 +L20 +L55 +R98 +L766 +R66 +R35 +L12 +L40 +R517 +L80 +R382 +R66 +R62 +L524 +R27 +R85 +R7 +L630 +R305 +L63 +L33 +L42 +R218 +L80 +L80 +R9 +R38 +L67 +L58 +L61 +L81 +L32 +L168 +L50 +R39 +L89 +L19 +L149 +L308 +L55 +L61 +L930 +R743 +R79 +L94 +L6 +R242 +R58 +R41 +R4 +R841 +L86 +R891 +R60 +L28 +L23 +L478 +R878 +R69 +L90 +L43 +R564 +R21 +R279 +R67 +R61 +L48 +L80 +R11 +L50 +R39 +R97 +L97 +L37 +L22 +R343 +L70 +R57 +L345 +L26 +L21 +L96 +R17 +L6 +L6 +R812 +L66 +L56 +R87 +R90 +L55 +L34 +R34 +L94 +R94 +R5 +R621 +R74 +R8 +R7 +R85 +L47 +L71 +L64 +R22 +L40 +L38 +R35 +R503 +R15 +L18 +L397 +L280 +R80 +R13 +R87 +R78 +L10 +R80 +R52 +L1 +L94 +R95 +L55 +R55 +R913 +L78 +R68 +R97 +R78 +L44 +R77 +R557 +L320 +R81 +L70 +L33 +L17 +R24 +R77 +R690 +R5 +R18 +L823 +R33 +R98 +R89 +R32 +L52 +L58 +R58 +R20 +R60 +L71 +L9 +R7 +R126 +R36 +R78 +L38 +R82 +L210 +L481 +R669 +R72 +L496 +L745 +L464 +R99 +L17 +L18 +L88 +R91 +L3 +R62 +R38 +L965 +L71 +L89 +R952 +L72 +L355 +R60 +L60 +R73 +L973 +L71 +R245 +R91 +R35 +R24 +R2 +R874 +R37 +L25 +R88 +L35 +R45 +L76 +R66 +R54 +R46 +L82 +L85 +L33 +L16 +R16 +L447 +L5 +L26 +L16 +L97 +L9 +R825 +L82 +L302 +R46 +L20 +L67 +R12 +L558 +L148 +L106 +R89 +L89 +R383 +L83 +R34 +R66 +L45 +R13 +R32 +L7 +R7 +R49 +L138 +L73 +R19 +L57 +L43 +L92 +R12 +L55 +R78 +R975 +L26 +L50 +R34 +L190 +L62 +L90 +R409 +R63 +L63 +L29 +R29 +L95 +R86 +R409 +R92 +L92 +L6 +L94 +L40 +L903 +R99 +L449 +L88 +L696 +R56 +R20 +L41 +R32 +L514 +R21 +R3 +R407 +L7 +L44 +R44 +R24 +L28 +L91 +R59 +R25 +R11 +L31 +R359 +R3 +L67 +R90 +R46 +R715 +L89 +L715 +L11 +R12 +L59 +L16 +L73 +R39 +R97 +R83 +L612 +R438 +R40 +R7 +L56 +R259 +R21 +L19 +L61 +L897 +R33 +L36 +L12 +L88 +R5 +R95 +L5 +L71 +R92 +R67 +R87 +R187 +L57 +R78 +R22 +R21 +L53 +R94 +L14 +R52 +L87 +L73 +L94 +L88 +L37 +R79 +R62 +R70 +R73 +R58 +R37 +R90 +R10 +R48 +R793 +L208 +R15 +L44 +L104 +R947 +L33 +L32 +R618 +R944 +L544 +R33 +L233 +L41 +R51 +R771 +R929 +R27 +R489 +L258 +R65 +R67 +R203 +L27 +R83 +L95 +L166 +R50 +L93 +L92 +L87 +L29 +L62 +L85 +L32 +L36 +R36 +R19 +L87 +R446 +L946 +L915 +L7 +L44 +R81 +L115 +R45 +L45 +R87 +L57 +R12 +R41 +R53 +R64 +L44 +L10 +R340 +R14 +R30 +R11 +L49 +R8 +R57 +R43 +L82 +L19 +R37 +R66 +R40 +L42 +L11 +R90 +R47 +R17 +L19 +R76 +R50 +L16 +L34 +R79 +R21 +L63 +R58 +R5 +R11 +R71 +R75 +L57 +L99 +R14 +L69 +L7 +L31 +R94 +L78 +R76 +L88 +R88 +R42 +R58 +R2 +R82 +R16 +L96 +R71 +R25 +L86 +R86 +R4 +L97 +L7 +L29 +R52 +R76 +R43 +L26 +R14 +R22 +L34 +L13 +L43 +R43 +L42 +L45 +L42 +R25 +R4 +R6 +L25 +R19 +R19 +L7 +R35 +L7 +L2 +L29 +R34 +R8 +R37 +R4 +R15 +L26 +L13 +R41 +R44 +R26 +R28 +L1 +R8 +R31 +L39 +R42 +L12 +L49 +R12 +L25 +L7 +L3 +R37 +L3 +L27 +R5 +R15 +L46 +R18 diff --git a/Day1/Question1/main.cpp b/Day1/Question1/main.cpp new file mode 100644 index 0000000..e463796 --- /dev/null +++ b/Day1/Question1/main.cpp @@ -0,0 +1,18 @@ +#include +#include +#include +#include + +int main() { + std::fstream inputFile("input"); + std::string currentLine; + int16_t counter = 50, number = 0, password = 0; + + while (std::getline(inputFile, currentLine)) { + number = std::stoi(currentLine.substr(1)); + counter = (counter + ((currentLine[0] == 'L') * 2 - 1) * number) % 100; + password += counter == 0 ? 1 : 0; + } + std::cout << password << std::endl; + return 0; +} diff --git a/Day1/Question2/input b/Day1/Question2/input new file mode 100644 index 0000000..aa444f5 --- /dev/null +++ b/Day1/Question2/input @@ -0,0 +1,4126 @@ +R26 +L12 +L47 +L2 +R15 +R39 +L11 +R26 +R22 +R23 +L16 +R45 +R23 +R28 +R12 +R32 +L14 +R20 +R38 +L26 +R26 +R50 +R19 +R28 +L4 +L17 +R47 +L18 +R34 +R37 +L12 +R27 +R47 +R3 +R4 +R13 +L19 +L44 +R49 +R27 +L28 +R11 +R9 +R44 +R13 +L13 +R37 +R24 +L26 +R64 +L3 +L72 +L7 +L21 +L80 +R80 +R58 +L21 +R81 +R33 +L51 +L58 +R58 +R32 +R81 +L13 +R85 +R15 +L62 +R62 +L91 +L11 +L17 +L81 +R62 +L40 +L46 +R24 +L37 +R39 +L24 +L78 +L27 +R27 +R55 +L60 +L2 +L81 +R49 +R39 +R66 +R21 +R97 +R73 +L37 +L18 +R11 +L72 +R38 +L78 +R99 +L5 +L139 +R324 +L80 +L10 +L48 +L40 +R14 +R24 +L64 +R94 +R79 +L77 +L46 +L26 +R19 +R988 +L50 +L66 +R64 +L944 +L79 +L132 +R11 +R3 +R36 +R3 +R49 +R70 +L72 +L32 +R335 +R97 +R62 +R640 +R98 +R27 +L27 +R648 +L48 +L82 +L18 +R10 +R15 +L25 +L38 +R871 +R59 +L92 +L824 +L97 +R69 +L548 +R50 +R14 +R936 +L40 +R78 +L638 +L4 +L96 +R72 +R28 +R688 +R88 +R24 +L70 +L33 +L57 +R60 +L78 +R81 +R36 +L659 +L19 +R39 +R423 +L41 +R45 +L27 +R14 +R55 +R343 +R68 +L66 +L597 +L17 +R61 +L69 +L44 +R92 +R60 +R52 +L73 +R8 +R21 +R92 +R62 +L5 +R493 +R35 +R58 +R635 +L78 +L25 +L29 +R98 +L44 +L34 +L55 +R45 +L17 +L56 +R17 +L60 +L40 +R97 +L88 +R991 +L437 +L10 +R151 +R37 +L341 +R157 +R402 +R41 +R51 +R95 +R954 +L51 +R851 +R49 +L49 +L48 +R94 +R6 +L97 +L58 +L97 +L337 +L83 +R10 +R60 +L43 +L94 +R30 +L6 +R60 +L47 +L65 +L78 +L25 +R45 +L27 +R2 +R42 +R42 +L90 +L853 +L75 +L69 +R1 +L71 +R91 +L53 +L67 +R184 +R1 +R225 +L38 +R328 +R36 +L57 +R935 +R93 +L5 +L38 +L64 +L33 +L203 +L307 +L407 +R4 +R85 +R161 +L54 +R17 +R86 +L49 +R59 +L829 +R33 +L63 +R72 +R6 +L64 +L39 +L54 +L21 +L37 +R37 +R94 +L94 +L73 +R73 +R54 +L94 +L60 +L51 +R72 +R18 +L21 +L18 +L63 +L87 +L50 +R20 +R80 +L63 +R46 +R83 +R60 +L3 +R33 +L56 +R298 +L62 +R90 +R874 +L17 +L83 +L958 +R23 +R79 +L58 +L909 +R578 +R62 +L36 +R7 +L88 +L42 +L7 +L43 +L89 +L10 +R36 +L45 +R4 +R96 +L31 +L88 +R88 +L69 +L40 +R79 +R661 +R71 +R29 +L7 +R307 +R5 +R62 +L17 +R3 +R81 +R71 +L38 +R36 +L503 +R58 +R803 +L45 +L15 +L208 +R88 +R47 +L528 +R26 +L76 +R466 +R595 +R968 +L79 +L92 +R2 +L99 +L98 +L44 +L767 +R4 +L322 +L41 +L80 +R215 +R22 +R5 +R781 +L18 +L663 +L14 +R82 +L64 +L82 +R963 +R582 +R33 +L58 +L96 +L20 +L44 +R13 +R46 +L46 +R38 +L30 +L8 +L73 +R16 +R82 +L634 +L221 +L570 +R27 +R998 +L8 +R583 +L358 +R7 +R580 +L79 +R63 +L77 +R96 +L82 +L950 +R70 +R39 +L9 +L13 +L40 +R53 +L20 +R20 +R26 +R74 +R78 +L78 +L42 +L44 +L14 +R64 +L40 +L81 +R57 +R66 +R85 +R49 +R49 +R451 +L24 +R58 +R66 +L78 +R490 +R223 +R28 +L964 +L286 +L13 +L84 +L13 +R63 +R934 +L371 +R823 +R69 +R79 +R99 +L82 +R54 +R91 +R38 +R41 +L41 +R10 +R790 +R87 +L87 +R292 +R60 +R28 +R20 +L14 +L21 +R35 +R54 +R892 +R76 +R76 +L98 +L33 +L67 +R24 +L24 +L20 +L54 +L26 +L5 +L903 +L8 +R97 +L597 +R281 +R35 +R4 +L1 +R97 +R79 +L80 +L569 +R371 +L814 +R67 +R3 +L29 +L28 +L7 +R7 +R32 +L4 +L16 +R88 +R64 +L792 +L371 +L92 +R91 +R60 +R40 +R8 +L65 +L43 +R465 +L53 +R298 +L10 +R19 +R381 +L74 +L36 +L16 +L74 +R585 +R50 +R45 +R30 +R90 +L95 +L8 +R403 +R65 +L23 +L27 +R49 +L76 +R39 +R21 +R772 +R41 +L61 +L69 +R69 +L18 +L182 +L83 +R42 +R41 +R40 +R60 +L29 +R51 +L38 +L750 +L434 +R51 +L83 +R33 +L601 +L99 +L1 +R51 +L51 +R62 +L5 +R77 +L34 +L58 +R58 +R20 +L33 +R709 +L65 +L31 +L36 +L7 +R89 +L46 +R294 +L30 +R45 +L9 +L444 +L62 +L94 +L25 +L75 +R185 +R83 +L3 +L48 +L17 +R79 +L221 +L925 +R27 +R98 +R742 +L69 +L31 +R91 +L7 +R16 +R87 +L13 +L74 +R7 +R96 +R516 +R981 +L93 +R44 +R958 +R25 +R68 +L981 +L47 +R26 +L41 +L707 +R295 +L85 +R981 +R46 +R20 +L9 +R96 +L396 +R895 +L95 +R86 +L49 +R76 +L13 +L78 +R26 +R62 +R66 +L441 +L13 +R78 +R71 +R44 +L89 +R471 +R42 +R37 +L76 +R99 +L921 +L78 +L24 +L38 +R862 +L3 +R3 +R59 +R310 +L960 +R15 +L48 +R24 +R53 +R47 +L56 +R477 +R123 +R13 +R573 +R78 +R79 +R13 +L82 +L8 +R89 +R51 +L50 +R3 +R899 +R98 +L59 +L441 +R16 +R84 +R96 +L27 +L69 +L58 +R69 +R47 +L858 +L51 +L49 +L997 +R50 +L53 +L65 +R91 +R64 +L90 +L45 +R82 +R1 +R74 +R88 +R49 +R51 +L983 +R84 +L82 +L347 +R137 +R91 +R4 +R683 +R157 +R17 +L61 +R14 +L14 +L28 +R33 +L953 +R48 +R211 +L20 +R18 +R491 +L54 +R93 +L39 +R79 +R45 +R76 +R335 +R94 +R136 +R35 +R718 +L62 +R51 +L7 +R4 +L4 +R58 +R462 +R80 +R32 +R44 +L476 +R705 +L84 +L21 +L78 +R4 +R5 +R669 +L78 +L22 +R64 +R57 +L889 +L78 +L40 +R486 +R21 +R79 +L91 +L8 +R709 +L10 +R546 +L46 +R33 +R80 +L30 +R54 +R63 +R64 +L64 +L90 +L910 +L8 +R19 +R19 +L30 +R84 +R73 +R443 +L49 +R41 +L92 +L88 +R9 +R54 +L83 +L92 +L621 +L79 +L9 +L28 +R37 +L182 +L18 +R16 +L728 +L79 +L44 +R35 +R2 +L27 +L86 +R31 +L6 +R32 +R670 +R617 +L50 +R17 +L68 +L732 +R626 +L2 +L894 +R10 +L988 +R49 +L1 +R779 +R24 +L3 +L59 +R34 +L75 +L916 +L84 +L671 +R71 +L395 +L5 +R99 +R1 +R88 +L79 +R280 +R11 +R67 +L67 +L25 +L93 +R49 +R92 +L23 +L141 +L59 +L196 +L4 +R33 +L43 +R428 +L318 +R615 +R85 +R67 +L81 +L79 +R388 +R5 +R503 +L144 +L31 +L5 +R621 +R56 +L63 +R713 +R41 +L791 +L461 +R61 +R48 +R33 +L12 +R47 +L526 +L90 +L52 +R59 +L67 +R60 +R76 +L844 +L32 +L58 +L617 +R52 +R21 +L98 +L96 +L86 +R22 +R48 +L1 +L218 +R31 +L63 +R36 +R87 +R87 +R53 +L941 +R41 +R19 +L19 +R64 +R36 +L6 +L7 +L87 +R20 +R1 +R96 +R257 +L15 +L59 +R78 +L881 +R35 +R68 +L75 +R792 +L9 +L8 +R1 +L85 +L16 +L144 +R844 +R80 +R98 +R4 +R974 +R44 +L12 +R40 +L28 +R32 +L80 +L71 +L81 +R76 +R24 +L48 +L8 +R56 +L19 +L81 +R36 +L33 +R97 +R81 +L75 +L6 +R25 +R21 +R35 +L4 +L93 +R89 +L72 +R99 +L64 +L892 +L60 +L184 +R50 +L50 +L39 +L61 +R24 +L770 +L91 +R37 +L6 +L94 +R86 +L24 +R15 +R51 +R16 +L216 +L16 +R591 +R531 +L64 +L81 +R911 +L54 +R47 +L49 +L16 +R72 +L21 +L579 +R83 +L27 +L56 +L769 +R69 +L964 +L34 +R26 +L24 +R443 +L47 +L52 +R52 +L85 +R8 +L776 +R53 +R28 +L65 +L62 +R5 +L81 +L25 +R679 +L99 +R26 +L892 +L14 +R71 +R29 +R62 +L62 +L21 +L19 +R40 +L292 +L8 +R89 +R30 +R83 +R45 +R615 +R38 +R99 +R1 +R11 +R83 +R79 +R503 +R895 +L25 +L169 +R44 +L35 +L86 +L32 +R32 +L16 +L84 +R38 +R362 +L455 +R55 +L392 +R92 +L6 +R97 +R419 +L10 +R24 +R38 +L68 +R6 +L392 +L16 +R8 +L5 +R5 +L71 +L18 +R24 +L35 +L60 +R44 +L64 +R422 +R44 +R54 +L20 +L78 +R913 +L330 +L25 +L47 +R47 +L95 +L94 +R189 +L31 +R7 +L86 +L62 +L28 +R48 +R71 +L870 +R84 +L29 +L4 +R40 +R60 +R22 +L22 +L99 +L301 +R68 +R8 +R57 +R81 +L14 +R16 +R84 +R55 +R99 +L40 +L52 +L71 +R11 +L68 +L34 +L234 +L45 +L24 +R3 +L42 +L35 +R11 +R66 +L75 +R54 +R19 +L71 +L554 +L93 +R9 +R11 +R957 +L26 +R69 +L87 +R63 +R624 +L26 +R70 +L13 +L92 +L33 +L706 +R82 +L48 +L82 +R76 +L16 +L112 +L593 +L63 +L44 +R65 +L434 +R76 +L7 +R40 +R60 +R851 +R49 +L70 +L33 +R614 +R89 +R532 +L69 +R29 +R48 +L44 +R225 +L57 +L172 +L292 +R831 +L31 +R44 +R56 +R229 +R7 +L64 +R39 +R38 +L1 +R52 +L23 +L16 +L61 +R68 +R57 +R78 +R46 +L49 +R320 +L39 +R259 +L523 +R569 +R698 +L84 +L1 +L98 +R99 +R57 +L78 +L12 +L67 +L43 +L57 +L60 +L55 +L887 +R49 +R53 +R25 +R26 +L51 +L99 +R99 +L33 +L28 +L39 +R14 +L614 +L66 +R266 +R145 +R66 +L69 +L27 +L15 +L91 +R733 +L795 +R91 +L45 +L44 +L29 +R878 +L87 +L21 +R10 +L43 +L55 +R20 +L94 +L59 +R4 +R98 +L66 +R199 +L34 +L70 +L54 +L46 +R83 +R17 +R667 +R96 +L6 +L187 +R146 +R84 +R86 +R40 +R74 +R61 +R53 +L14 +L93 +R33 +L9 +R569 +L20 +R7 +R63 +R16 +R82 +L34 +L92 +R78 +R95 +R905 +L82 +R614 +R70 +R98 +L18 +R99 +L536 +R64 +R87 +L81 +L50 +L19 +R95 +L41 +L20 +R20 +L87 +R587 +L22 +R322 +R17 +R998 +L14 +L701 +L90 +R66 +R72 +R690 +L59 +R91 +R59 +R27 +L62 +R94 +L80 +L46 +R29 +L91 +L51 +L61 +L88 +R42 +R90 +L811 +L58 +L63 +R355 +R877 +R568 +R482 +R7 +R219 +L8 +R551 +L87 +R82 +L611 +R13 +R86 +R82 +L16 +L65 +R65 +L81 +L19 +R34 +L40 +L74 +R80 +L628 +R28 +R42 +R86 +R72 +L654 +R54 +L141 +R47 +R32 +L55 +L83 +R78 +R22 +R3 +L92 +L37 +R17 +L59 +L32 +L5 +L7 +L6 +R18 +L73 +L567 +R7 +R33 +L64 +R33 +R38 +R70 +R23 +R21 +R71 +R8 +L97 +R26 +R370 +R34 +L93 +L85 +L39 +R184 +L66 +R185 +L419 +L65 +L95 +L440 +L81 +R81 +L6 +R90 +R846 +R612 +R58 +R37 +L37 +L29 +R29 +L89 +R89 +L601 +R1 +R41 +R59 +R153 +L86 +L67 +R27 +L22 +L905 +R28 +R847 +R25 +R321 +R431 +L26 +L26 +R28 +L98 +R70 +L37 +R37 +R71 +L498 +R968 +L41 +L94 +R4 +L21 +R80 +L69 +L56 +R41 +R15 +L70 +R55 +R48 +L33 +R681 +R5 +L65 +R28 +L67 +R339 +R479 +R29 +L959 +L70 +R43 +L43 +L829 +L83 +R26 +L12 +R98 +R90 +L161 +L77 +L74 +L51 +R72 +R85 +L45 +R61 +R34 +L99 +R65 +R340 +L40 +L73 +L64 +R37 +L36 +L26 +L838 +L438 +R47 +L309 +L56 +L12 +R684 +R58 +L74 +L12 +L188 +L219 +L482 +R1 +R523 +R77 +R83 +L87 +R457 +R77 +L30 +L513 +R78 +R97 +R9 +L13 +L58 +L32 +R13 +L981 +L57 +L22 +L21 +L98 +L2 +R32 +L50 +R18 +R61 +L31 +L12 +L742 +R846 +L22 +R958 +R86 +L81 +R27 +L57 +R67 +L466 +R266 +L81 +L76 +L58 +R15 +R76 +L81 +R55 +L161 +R11 +R17 +L63 +L256 +L552 +R54 +L69 +R22 +L53 +L906 +R6 +R8 +R27 +L335 +L59 +L874 +L37 +R34 +R59 +R77 +R801 +R66 +R35 +L26 +L73 +R97 +L18 +L82 +L716 +R16 +R12 +R88 +R95 +R95 +R10 +R16 +R37 +L53 +L26 +L562 +L12 +L2 +L198 +R68 +R86 +R73 +L30 +R403 +L81 +R681 +R56 +R21 +L88 +L974 +R85 +L99 +L99 +R99 +L1 +L77 +R77 +L98 +R98 +R70 +R13 +L83 +R53 +L20 +L33 +L88 +R4 +L416 +R34 +R12 +L33 +R87 +L77 +R19 +R13 +R45 +R29 +R671 +L97 +R80 +L83 +R25 +R77 +R52 +L781 +L45 +R72 +R34 +R366 +L778 +R24 +L43 +R63 +R94 +L60 +R86 +R32 +R22 +L640 +R412 +R52 +L4 +R40 +R53 +L53 +R39 +L14 +L25 +R17 +R83 +L49 +L25 +L8 +R75 +L93 +L21 +L50 +L29 +L80 +R880 +L26 +R26 +L186 +L21 +R32 +L89 +R969 +L62 +L943 +L60 +R60 +R66 +R34 +R95 +L95 +R75 +R608 +L283 +R16 +R84 +L63 +R63 +R69 +L10 +L59 +R38 +R369 +R93 +L73 +L838 +R48 +R248 +L43 +L45 +L5 +L90 +R77 +L77 +L57 +R90 +R65 +R636 +L36 +L41 +R136 +R5 +R31 +L631 +R117 +L68 +L39 +R90 +R43 +R857 +R7 +R432 +L18 +R66 +L16 +R29 +L643 +L14 +R1 +R56 +R53 +R51 +L91 +R76 +L41 +L50 +R93 +R9 +R13 +L2 +R126 +L84 +L11 +L29 +R95 +L67 +L41 +R38 +R62 +L44 +R90 +R47 +R7 +L24 +R685 +R39 +L51 +L99 +R50 +R6 +L6 +R92 +R8 +R136 +R17 +L85 +L68 +L62 +L38 +L234 +L27 +L565 +R714 +L88 +L74 +L47 +L24 +R65 +R80 +L94 +R94 +R26 +R74 +L19 +R2 +R59 +R61 +R97 +R14 +L72 +R21 +R22 +L349 +L60 +R86 +L24 +R16 +R46 +R78 +R22 +R899 +L11 +L88 +R382 +L231 +R1 +R91 +R34 +L379 +R69 +R83 +R79 +R95 +R21 +R691 +L41 +L929 +R945 +R40 +L325 +R74 +L12 +R749 +L85 +L47 +L554 +R49 +L97 +L3 +L59 +R17 +L2 +R12 +R68 +L36 +R6 +R999 +L5 +L12 +L61 +L29 +R14 +R40 +L52 +L37 +L75 +R79 +L96 +L60 +L35 +R24 +R843 +R57 +L27 +R83 +R44 +R61 +R39 +R20 +L420 +R82 +L716 +R50 +L48 +L28 +L40 +R89 +R53 +R564 +R94 +L34 +L66 +L37 +L63 +L571 +R28 +R55 +L12 +R77 +R54 +L331 +R139 +L20 +R89 +R92 +R67 +R35 +L428 +L235 +L88 +R49 +R42 +R58 +L109 +L91 +L28 +L544 +L28 +R1 +L25 +L76 +R28 +L54 +L37 +L27 +L55 +L55 +R77 +R34 +L61 +L963 +L26 +R39 +L36 +R14 +L538 +R60 +R47 +R45 +R9 +R611 +L37 +R25 +L25 +L75 +R706 +R6 +R88 +R217 +L43 +R72 +R62 +L57 +L51 +L89 +L11 +R47 +R56 +R32 +L135 +R70 +R34 +L4 +L91 +L72 +L91 +L19 +R73 +L243 +R51 +R92 +R23 +L10 +L75 +R18 +R3 +R1 +L272 +L8 +L40 +R60 +L278 +L79 +L43 +L920 +R25 +R922 +R70 +L33 +L64 +R68 +L82 +R14 +R10 +R873 +R77 +R39 +L70 +R65 +R491 +L17 +L68 +L56 +L429 +R40 +R45 +R46 +L26 +R92 +R22 +L34 +R96 +R28 +R76 +L58 +L47 +L53 +R23 +R614 +R21 +L38 +R38 +R135 +L33 +R598 +L7 +L55 +R62 +R924 +R21 +L69 +R81 +L57 +L68 +R733 +L65 +L85 +R190 +R95 +L466 +R19 +L1 +R24 +L829 +R90 +L71 +L53 +L23 +R10 +R77 +L677 +L746 +L45 +R65 +R26 +R937 +L71 +R30 +L492 +L65 +L86 +R993 +L46 +L59 +R84 +L25 +L8 +L692 +L82 +L41 +R23 +L99 +R99 +L19 +L98 +R309 +R81 +R370 +R6 +L64 +R15 +L771 +R978 +R93 +L95 +R85 +R69 +R41 +R627 +L11 +L68 +L48 +L3 +R3 +L67 +L818 +R79 +R6 +R47 +L517 +L84 +L53 +L39 +R22 +L72 +R57 +R22 +R17 +L19 +L81 +L5 +L117 +L978 +L23 +L40 +L5 +R68 +R60 +L60 +L40 +L48 +R369 +L759 +L22 +R29 +L11 +R582 +L5 +L95 +L65 +R677 +R788 +R49 +R151 +L69 +L13 +L18 +R691 +L91 +L48 +L70 +R518 +L33 +R78 +R55 +R60 +L130 +L30 +R15 +R976 +L98 +L93 +L88 +R888 +L38 +R242 +L104 +L99 +R12 +R77 +R10 +L53 +L47 +R36 +R283 +L19 +L851 +L27 +L59 +L45 +L40 +L78 +L264 +R639 +R77 +R23 +R51 +R66 +L97 +L23 +L72 +R8 +R35 +L36 +R60 +L52 +R85 +R27 +L93 +L249 +R39 +R176 +R58 +L258 +L684 +L216 +L41 +R72 +R69 +L45 +R45 +R393 +L93 +L59 +R94 +R71 +R68 +L74 +R17 +L56 +L35 +L26 +L544 +L64 +L63 +L4 +R65 +L90 +L961 +R79 +R82 +L20 +R48 +R72 +L62 +R6 +L44 +L19 +L88 +R51 +R23 +L67 +R568 +L262 +R94 +L98 +R98 +R45 +L31 +L14 +L77 +R77 +L14 +L155 +R45 +L28 +L91 +R94 +R649 +L71 +L58 +L71 +L17 +R466 +L49 +R783 +L83 +R6 +R629 +R65 +L626 +L74 +L70 +L33 +R89 +R314 +L95 +R50 +R545 +L29 +L71 +R724 +L88 +L516 +R80 +R58 +R85 +R57 +R754 +R648 +L43 +R795 +R63 +L17 +L97 +L5 +R127 +L25 +R84 +L84 +L87 +L13 +R59 +L17 +R58 +R64 +L64 +R529 +L58 +R29 +L45 +L55 +R20 +L602 +L14 +L35 +R41 +R90 +R34 +R72 +L68 +R62 +R94 +L594 +L95 +L5 +L27 +L60 +L53 +R940 +R73 +R27 +L58 +L42 +L39 +R6 +L94 +R69 +R9 +L82 +R173 +L42 +R61 +R39 +R61 +R26 +R92 +L241 +R80 +R89 +L26 +R69 +R50 +R1 +R913 +R86 +L22 +R73 +R24 +L75 +R602 +L2 +R99 +R30 +L304 +R76 +R82 +L96 +R13 +L20 +R20 +R62 +R62 +R34 +R242 +L97 +L3 +L99 +L1 +L2 +L92 +R29 +R88 +L853 +L73 +R603 +L10 +L59 +R69 +R14 +R57 +L16 +L355 +L15 +L5 +L980 +R12 +L16 +L4 +L24 +R595 +R37 +R48 +R19 +L67 +R263 +L63 +L31 +R22 +R9 +R352 +L52 +L48 +L52 +R39 +R5 +R56 +L62 +L38 +L657 +L49 +L94 +R123 +R25 +L48 +L7 +R37 +L26 +R96 +R497 +L97 +R857 +L9 +L51 +R3 +L33 +R652 +L53 +L55 +L79 +R68 +R92 +L22 +R330 +L23 +L370 +R93 +R205 +L20 +R90 +L2 +L56 +L17 +R477 +L58 +R81 +R98 +R2 +R42 +L42 +L64 +R64 +R83 +L33 +L50 +R55 +R45 +R81 +L81 +L34 +R93 +L12 +R30 +L77 +R48 +R52 +R498 +R21 +R95 +L518 +R904 +L99 +L10 +R50 +R59 +R97 +R78 +L425 +L450 +R26 +R84 +R90 +R236 +L36 +R60 +L68 +L62 +L86 +R74 +L218 +L37 +L11 +R168 +L52 +R32 +L96 +L21 +L60 +R76 +L99 +L17 +L56 +R673 +R995 +R45 +L82 +R26 +L184 +L36 +R36 +L13 +L587 +R97 +L99 +R2 +L587 +L97 +R84 +L66 +R3 +R63 +L783 +R35 +R42 +R271 +L6 +R825 +L97 +R35 +L5 +R7 +R32 +R43 +R20 +L19 +R49 +R12 +R66 +L13 +L11 +R97 +L4 +R38 +R866 +R21 +R61 +L68 +R86 +R23 +L62 +L1 +R40 +L73 +L24 +L38 +L65 +R47 +R53 +L87 +R71 +R16 +R12 +L79 +R14 +R47 +L94 +R39 +L77 +R32 +L94 +R95 +R422 +L58 +L418 +R17 +R38 +R4 +L79 +R79 +R77 +L77 +L717 +L32 +R82 +R746 +R21 +L2 +L98 +L32 +L42 +L46 +R22 +R298 +R99 +R19 +R82 +L260 +L40 +L49 +L77 +R62 +L22 +R10 +R76 +R371 +L229 +L37 +L150 +L55 +L17 +R36 +R32 +R49 +L95 +L805 +R24 +L24 +R33 +R667 +L57 +R50 +R7 +R86 +R74 +R19 +R92 +L49 +R78 +R176 +R86 +R338 +L49 +R18 +L69 +R51 +L251 +R904 +R96 +R14 +L72 +R59 +R99 +R58 +R270 +R92 +L68 +L51 +L771 +L630 +R246 +R454 +R9 +L66 +L62 +R19 +R55 +R83 +R21 +R61 +R380 +R40 +L50 +L310 +R285 +R44 +R291 +R43 +L43 +L35 +L65 +L257 +R404 +R53 +L32 +L5 +R3 +R3 +R22 +L220 +R14 +L37 +R29 +R460 +L14 +L84 +R2 +L34 +L47 +L320 +R27 +R33 +L18 +L81 +R85 +L86 +R98 +L764 +R3 +L34 +R72 +R819 +L94 +R26 +R68 +R94 +L88 +L53 +L47 +R928 +L70 +R433 +L91 +R966 +L50 +R684 +L79 +L76 +L45 +L4 +R37 +R67 +L91 +R1 +R924 +L34 +L725 +L543 +L79 +L53 +L38 +L62 +L28 +R99 +R83 +R46 +R44 +L56 +R36 +L24 +R422 +L22 +R36 +R27 +R37 +R905 +L94 +L56 +R37 +R26 +R11 +R530 +L59 +R74 +L974 +L23 +R6 +R997 +L11 +R431 +R10 +L10 +L802 +R18 +L758 +R642 +R93 +R7 +R56 +L26 +L58 +R35 +R7 +L98 +L609 +R535 +L36 +L53 +L64 +R21 +R72 +L82 +R89 +L89 +L50 +R50 +R74 +R818 +L79 +R87 +R81 +R28 +L81 +L75 +L6 +L67 +L53 +L25 +L2 +L9 +L114 +R83 +L60 +R64 +R464 +L28 +R5 +L92 +R933 +L33 +R87 +R91 +L72 +L97 +R501 +R817 +L32 +R92 +R481 +R19 +L56 +R8 +R48 +L22 +R22 +R8 +R46 +R93 +R160 +L513 +R6 +L20 +R31 +L711 +L129 +R339 +L10 +R83 +L283 +R63 +L55 +L35 +R24 +R3 +L71 +R25 +R82 +L36 +R67 +R33 +R116 +L539 +L77 +R30 +R23 +L30 +L27 +R4 +L62 +R4 +L42 +R47 +L92 +L2 +L198 +R91 +R54 +L247 +L81 +R28 +L99 +R99 +L85 +R85 +L40 +L26 +L60 +R17 +R15 +L306 +R6 +R94 +L75 +L25 +L60 +R19 +R57 +R1 +L17 +R93 +R76 +L27 +L15 +L27 +R31 +R67 +L32 +R34 +R77 +R23 +R59 +R7 +R98 +R95 +R61 +R18 +L69 +L69 +R47 +L38 +R2 +R88 +R82 +R15 +R58 +L47 +R183 +L20 +R670 +R33 +R59 +L35 +R23 +R31 +R749 +R74 +L74 +L42 +R42 +L10 +R220 +L10 +L51 +L49 +R69 +L28 +R416 +R599 +L23 +R53 +L49 +L37 +R27 +R73 +R35 +R25 +R8 +R932 +L11 +R9 +R219 +L17 +R29 +L37 +L78 +R986 +R1 +L19 +L53 +R71 +R37 +R370 +L806 +R70 +L2 +L69 +R46 +R54 +L28 +R31 +R45 +L85 +R43 +L81 +R121 +L46 +R34 +R25 +R99 +L97 +R34 +L69 +R74 +R411 +R89 +R97 +L24 +L73 +R33 +R765 +L614 +R16 +L64 +R64 +R99 +R24 +L623 +R312 +R288 +R89 +R98 +L92 +R98 +L36 +R88 +L52 +L93 +L31 +R146 +L22 +R7 +L94 +R61 +L101 +R43 +R53 +L94 +R32 +L285 +L936 +R21 +R22 +L22 +L55 +L8 +R837 +L74 +R91 +R173 +R36 +L96 +L25 +L26 +R52 +L929 +L76 +R54 +L30 +L324 +L47 +R70 +R77 +L87 +R75 +L688 +L19 +R61 +R58 +L28 +L72 +R68 +R85 +L14 +R59 +L84 +R43 +R399 +R83 +L39 +L895 +R95 +R45 +L19 +R21 +L9 +L638 +R45 +L45 +R899 +R6 +L43 +L4 +R360 +R835 +L57 +L77 +L7 +R380 +L92 +L78 +R82 +L93 +R54 +R35 +L84 +R84 +R56 +L926 +R543 +R27 +R413 +R87 +L40 +L8 +L52 +R76 +L80 +L12 +R4 +R33 +R38 +L76 +L144 +R61 +L17 +R81 +L64 +R35 +R47 +L14 +L8 +L60 +R93 +L93 +L95 +R43 +R52 +R5 +L66 +R61 +L29 +R119 +R50 +R78 +R12 +R21 +R49 +L31 +L69 +L39 +L74 +R56 +R95 +L4 +R17 +R49 +L55 +R974 +L219 +L80 +L20 +L85 +L27 +R41 +R84 +R75 +R12 +L44 +L256 +L92 +L68 +R60 +L592 +L51 +R88 +R96 +R59 +R22 +L22 +L37 +R37 +R91 +R9 +R59 +R83 +R58 +R47 +L93 +L167 +L55 +R4 +L79 +L96 +R41 +R38 +R401 +R24 +R35 +L9 +R609 +L68 +R46 +R923 +L62 +L445 +R6 +R953 +R7 +L55 +L65 +R47 +R17 +L291 +R187 +R88 +L61 +L27 +R491 +L91 +L61 +L39 +R36 +R78 +R86 +R75 +L17 +R778 +R94 +L730 +L41 +L27 +R5 +L37 +L47 +L73 +R20 +R730 +R83 +R67 +L880 +L57 +R97 +L58 +R963 +L45 +R30 +R109 +L39 +L77 +L223 +R97 +L45 +R47 +L99 +L898 +L43 +L59 +L71 +R12 +L41 +L94 +L27 +R21 +L2 +L498 +R378 +R18 +R68 +R36 +R72 +R983 +R45 +R81 +L34 +R53 +R26 +L26 +L574 +R74 +L28 +L72 +L17 +L98 +R87 +R50 +R74 +L96 +L474 +R974 +L32 +L68 +L914 +L584 +R98 +L54 +L813 +R67 +L79 +L57 +R298 +R92 +L29 +R75 +R40 +R124 +L64 +R181 +L81 +R854 +R46 +R57 +L57 +L75 +L58 +L18 +R51 +R46 +R70 +L16 +R3 +R77 +R27 +R93 +L5 +L95 +R85 +R954 +R261 +L94 +R94 +R99 +L899 +L25 +L75 +R5 +L80 +R75 +R59 +L47 +R852 +R36 +R23 +L440 +L77 +R94 +R19 +L66 +R99 +R15 +R99 +R468 +L9 +L825 +R677 +L277 +L51 +L49 +R48 +R52 +R99 +L60 +L45 +R6 +L922 +L763 +L20 +L18 +L169 +R5 +L84 +R473 +L2 +R519 +R481 +R63 +L10 +L53 +R57 +R66 +L42 +R769 +R66 +R75 +R26 +L55 +R38 +L18 +R84 +L66 +L42 +R344 +R25 +L689 +R94 +L32 +L821 +L15 +R63 +R10 +R49 +L86 +L92 +R17 +R82 +R57 +L30 +L61 +L24 +L8 +L60 +R919 +L76 +L2 +R26 +R977 +R22 +L91 +L93 +R24 +R13 +L80 +L8 +R73 +L81 +R98 +R98 +L69 +R18 +L56 +L34 +L31 +R872 +L46 +L26 +L71 +R342 +L829 +R30 +L26 +L67 +R93 +L623 +L77 +L38 +L62 +L8 +L92 +R54 +R84 +L38 +R683 +R17 +L68 +L59 +R27 +L52 +L61 +R306 +L93 +R31 +L94 +L40 +R19 +R820 +L51 +L20 +R35 +R21 +L21 +R67 +L12 +L31 +L32 +R50 +R19 +L48 +R87 +R569 +L22 +L38 +R24 +L53 +L80 +R98 +L98 +R7 +R5 +L355 +L17 +R60 +L875 +R58 +R70 +R994 +R53 +L17 +L531 +R748 +R848 +L548 +R80 +L68 +R88 +L197 +L23 +L80 +R86 +L86 +R76 +L76 +R67 +L475 +R52 +L39 +L843 +R14 +L291 +L78 +R339 +R591 +L3 +R466 +R3 +L39 +L2 +L76 +R193 +R21 +L26 +R375 +L95 +R42 +L96 +L19 +L71 +R413 +R35 +L83 +L62 +R87 +R971 +L63 +R42 +R850 +R2 +L902 +L33 +L1 +R575 +R59 +R63 +L47 +L70 +L43 +R74 +L69 +R92 +R48 +L48 +R26 +R59 +R95 +L60 +L66 +L40 +R86 +L81 +R96 +L15 +R73 +L68 +R2 +R93 +L25 +L75 +L12 +R12 +L93 +L59 +R52 +L11 +R46 +L23 +R53 +R629 +R46 +L74 +R96 +R657 +L14 +R46 +L99 +R48 +R980 +R51 +L7 +L99 +R52 +L20 +L55 +R98 +L766 +R66 +R35 +L12 +L40 +R517 +L80 +R382 +R66 +R62 +L524 +R27 +R85 +R7 +L630 +R305 +L63 +L33 +L42 +R218 +L80 +L80 +R9 +R38 +L67 +L58 +L61 +L81 +L32 +L168 +L50 +R39 +L89 +L19 +L149 +L308 +L55 +L61 +L930 +R743 +R79 +L94 +L6 +R242 +R58 +R41 +R4 +R841 +L86 +R891 +R60 +L28 +L23 +L478 +R878 +R69 +L90 +L43 +R564 +R21 +R279 +R67 +R61 +L48 +L80 +R11 +L50 +R39 +R97 +L97 +L37 +L22 +R343 +L70 +R57 +L345 +L26 +L21 +L96 +R17 +L6 +L6 +R812 +L66 +L56 +R87 +R90 +L55 +L34 +R34 +L94 +R94 +R5 +R621 +R74 +R8 +R7 +R85 +L47 +L71 +L64 +R22 +L40 +L38 +R35 +R503 +R15 +L18 +L397 +L280 +R80 +R13 +R87 +R78 +L10 +R80 +R52 +L1 +L94 +R95 +L55 +R55 +R913 +L78 +R68 +R97 +R78 +L44 +R77 +R557 +L320 +R81 +L70 +L33 +L17 +R24 +R77 +R690 +R5 +R18 +L823 +R33 +R98 +R89 +R32 +L52 +L58 +R58 +R20 +R60 +L71 +L9 +R7 +R126 +R36 +R78 +L38 +R82 +L210 +L481 +R669 +R72 +L496 +L745 +L464 +R99 +L17 +L18 +L88 +R91 +L3 +R62 +R38 +L965 +L71 +L89 +R952 +L72 +L355 +R60 +L60 +R73 +L973 +L71 +R245 +R91 +R35 +R24 +R2 +R874 +R37 +L25 +R88 +L35 +R45 +L76 +R66 +R54 +R46 +L82 +L85 +L33 +L16 +R16 +L447 +L5 +L26 +L16 +L97 +L9 +R825 +L82 +L302 +R46 +L20 +L67 +R12 +L558 +L148 +L106 +R89 +L89 +R383 +L83 +R34 +R66 +L45 +R13 +R32 +L7 +R7 +R49 +L138 +L73 +R19 +L57 +L43 +L92 +R12 +L55 +R78 +R975 +L26 +L50 +R34 +L190 +L62 +L90 +R409 +R63 +L63 +L29 +R29 +L95 +R86 +R409 +R92 +L92 +L6 +L94 +L40 +L903 +R99 +L449 +L88 +L696 +R56 +R20 +L41 +R32 +L514 +R21 +R3 +R407 +L7 +L44 +R44 +R24 +L28 +L91 +R59 +R25 +R11 +L31 +R359 +R3 +L67 +R90 +R46 +R715 +L89 +L715 +L11 +R12 +L59 +L16 +L73 +R39 +R97 +R83 +L612 +R438 +R40 +R7 +L56 +R259 +R21 +L19 +L61 +L897 +R33 +L36 +L12 +L88 +R5 +R95 +L5 +L71 +R92 +R67 +R87 +R187 +L57 +R78 +R22 +R21 +L53 +R94 +L14 +R52 +L87 +L73 +L94 +L88 +L37 +R79 +R62 +R70 +R73 +R58 +R37 +R90 +R10 +R48 +R793 +L208 +R15 +L44 +L104 +R947 +L33 +L32 +R618 +R944 +L544 +R33 +L233 +L41 +R51 +R771 +R929 +R27 +R489 +L258 +R65 +R67 +R203 +L27 +R83 +L95 +L166 +R50 +L93 +L92 +L87 +L29 +L62 +L85 +L32 +L36 +R36 +R19 +L87 +R446 +L946 +L915 +L7 +L44 +R81 +L115 +R45 +L45 +R87 +L57 +R12 +R41 +R53 +R64 +L44 +L10 +R340 +R14 +R30 +R11 +L49 +R8 +R57 +R43 +L82 +L19 +R37 +R66 +R40 +L42 +L11 +R90 +R47 +R17 +L19 +R76 +R50 +L16 +L34 +R79 +R21 +L63 +R58 +R5 +R11 +R71 +R75 +L57 +L99 +R14 +L69 +L7 +L31 +R94 +L78 +R76 +L88 +R88 +R42 +R58 +R2 +R82 +R16 +L96 +R71 +R25 +L86 +R86 +R4 +L97 +L7 +L29 +R52 +R76 +R43 +L26 +R14 +R22 +L34 +L13 +L43 +R43 +L42 +L45 +L42 +R25 +R4 +R6 +L25 +R19 +R19 +L7 +R35 +L7 +L2 +L29 +R34 +R8 +R37 +R4 +R15 +L26 +L13 +R41 +R44 +R26 +R28 +L1 +R8 +R31 +L39 +R42 +L12 +L49 +R12 +L25 +L7 +L3 +R37 +L3 +L27 +R5 +R15 +L46 +R18 diff --git a/Day1/Question2/inputTest b/Day1/Question2/inputTest new file mode 100644 index 0000000..bcb2568 --- /dev/null +++ b/Day1/Question2/inputTest @@ -0,0 +1,11 @@ +L68 +L30 +R48 +L5 +R60 +L55 +L1 +L99 +R14 +L82 +L133 diff --git a/Day1/Question2/main.cpp b/Day1/Question2/main.cpp new file mode 100644 index 0000000..50a550d --- /dev/null +++ b/Day1/Question2/main.cpp @@ -0,0 +1,37 @@ +#include +#include +#include +#include + +int main() { + std::fstream inputFile("input"); + std::string currentLine; + int16_t counter = 50, number = 0, password = 0, remainder = 0, hold = 0; + bool isRotatingDown; // This is pretty arbitrary, could've bee isRotatingUp + + while (std::getline(inputFile, currentLine)) { + // Get the number + isRotatingDown = currentLine[0] == 'L'; + number = std::stoi(currentLine.substr(1)); + remainder = number % 100; + + // Redundant rotations + // Neat thing is if it is less than 100, this gives a 0 + password += (number - remainder) / 100; + + // Remainder is the non reduntant turns we will do + hold = counter + (remainder * (isRotatingDown ? -1 : 1)); + + // its bit of a hack since in C++ true is same as 1 and false is same as 0 + // This also works since maximum counter can be is 99 and maximum remainder + // is 99 so it is 198 (so max 1 rotation) + // and lowest possible is -99 (again only 1) + password += isRotatingDown && counter != 0 ? (hold <= 0) : (hold >= 100); + + // Rotating back + counter = hold % 100; + counter += counter < 0 ? 100 : 0; + } + std::cout << password << std::endl; + return 0; +}