Advent of Code

br0xen [7](AoC++) 2*

/^[8]2025$/

--- Day 1: Secret Entrance ---

   The Elves have good news and bad news.

   The good news is that they've discovered [16]project management! This has
   given them the tools they need to prevent their usual Christmas emergency.
   For example, they now know that the North Pole decorations need to be
   finished soon so that other critical tasks can start on time.

   The bad news is that they've realized they have a different emergency:
   according to their resource planning, none of them have any time left to
   decorate the North Pole!

   To save Christmas, the Elves need you to finish decorating the North Pole
   by December 12th.

   Collect stars by solving puzzles. Two puzzles will be made available on
   each day; the second puzzle is unlocked when you complete the first. Each
   puzzle grants one star. Good luck!

   You arrive at the secret entrance to the North Pole base ready to start
   decorating. Unfortunately, the password seems to have been changed, so you
   can't get in. A document taped to the wall helpfully explains:

   "Due to new security protocols, the password is locked in the safe below.
   Please see the attached document for the new combination."

   The safe has a dial with only an arrow on it; around the dial are the
   numbers 0 through 99 in order. As you turn the dial, it makes a small
   click noise as it reaches each number.

   The attached document (your puzzle input) contains a sequence of
   rotations, one per line, which tell you how to open the safe. A rotation
   starts with an L or R which indicates whether the rotation should be to
   the left (toward lower numbers) or to the right (toward higher numbers).
   Then, the rotation has a distance value which indicates how many clicks
   the dial should be rotated in that direction.

   So, if the dial were pointing at 11, a rotation of R8 would cause the dial
   to point at 19. After that, a rotation of L19 would cause it to point at
   0.

   Because the dial is a circle, turning the dial left from 0 one click makes
   it point at 99. Similarly, turning the dial right from 99 one click makes
   it point at 0.

   So, if the dial were pointing at 5, a rotation of L10 would cause it to
   point at 95. After that, a rotation of R5 could cause it to point at 0.

   The dial starts by pointing at 50.

   You could follow the instructions, but your recent required official North
   Pole secret entrance security training seminar taught you that the safe is
   actually a decoy. The actual password is the number of times the dial is
   left pointing at 0 after any rotation in the sequence.

   For example, suppose the attached document contained the following
   rotations:

 L68
 L30
 R48
 L5
 R60
 L55
 L1
 L99
 R14
 L82

   Following these rotations would cause the dial to move as follows:

     • The dial starts by pointing at 50.
     • The dial is rotated L68 to point at 82.
     • The dial is rotated L30 to point at 52.
     • The dial is rotated R48 to point at 0.
     • The dial is rotated L5 to point at 95.
     • The dial is rotated R60 to point at 55.
     • The dial is rotated L55 to point at 0.
     • The dial is rotated L1 to point at 99.
     • The dial is rotated L99 to point at 0.
     • The dial is rotated R14 to point at 14.
     • The dial is rotated L82 to point at 32.

   Because the dial points at 0 a total of three times during this process,
   the password in this example is 3.

   Analyze the rotations in your attached document. What's the actual
   password to open the door?

   Your puzzle answer was 1026.

--- Part Two ---

   You're sure that's the right password, but the door won't open. You knock,
   but nobody answers. You build a snowman while you think.

   As you're rolling the snowballs for your snowman, you find another
   security document that must have fallen into the snow:

   "Due to newer security protocols, please use password method 0x434C49434B
   until further notice."

   You remember from the training seminar that "method 0x434C49434B" means
   you're actually supposed to count the number of times any click causes the
   dial to point at 0, regardless of whether it happens during a rotation or
   at the end of one.

   Following the same rotations as in the above example, the dial points at
   zero a few extra times during its rotations:

     • The dial starts by pointing at 50.
     • The dial is rotated L68 to point at 82; during this rotation, it
       points at 0 once.
     • The dial is rotated L30 to point at 52.
     • The dial is rotated R48 to point at 0.
     • The dial is rotated L5 to point at 95.
     • The dial is rotated R60 to point at 55; during this rotation, it
       points at 0 once.
     • The dial is rotated L55 to point at 0.
     • The dial is rotated L1 to point at 99.
     • The dial is rotated L99 to point at 0.
     • The dial is rotated R14 to point at 14.
     • The dial is rotated L82 to point at 32; during this rotation, it
       points at 0 once.

   In this example, the dial points at 0 three times at the end of a
   rotation, plus three more times during a rotation. So, in this example,
   the new password would be 6.

   Be careful: if the dial were pointing at 50, a single rotation like R1000
   would cause the dial to point at 0 ten times before returning back to 50!

   Using password method 0x434C49434B, what is the password to open the door?

   Your puzzle answer was 5923.

   Both parts of this puzzle are complete! They provide two gold stars: **

   At this point, you should [17]return to your Advent calendar and try
   another puzzle.

   If you still want to see it, you can [18]get your puzzle input.

References

   Visible links
   1. https://adventofcode.com/
   2. https://adventofcode.com/2025/about
   3. https://adventofcode.com/2025/events
   5. https://adventofcode.com/2025/settings
   6. https://adventofcode.com/2025/auth/logout
   7. Advent of Code Supporter
	https://adventofcode.com/2025/support
   8. https://adventofcode.com/2025
   9. https://adventofcode.com/2025
  10. https://adventofcode.com/2025/support
  11. https://adventofcode.com/2025/sponsors
  12. https://adventofcode.com/2025/leaderboard/private
  13. https://adventofcode.com/2025/stats
  14. https://adventofcode.com/2025/sponsors
  15. https://adventofcode.com/2025/sponsors/redirect?url=https%3A%2F%2Fwww%2Ejumptrading%2Ecom%2F
  16. https://en.wikipedia.org/wiki/Project_management
  17. https://adventofcode.com/2025
  18. https://adventofcode.com/2025/day/1/input
