Advertisement
Guest User

Untitled

a guest
Dec 11th, 2024
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.86 KB | None | 0 0
  1. # Input: list of numbers
  2. # Output: each step, each number changes simultaneously:
  3. #           if 0, then replaced by 1
  4. #           else if even number of digits, then split (e.g. 1000 -> 10 0)
  5. #           else multiplied by 2024
  6. #         how many numbers after 25 steps?
  7.  
  8. numbers = []
  9.  
  10. file = open("11_input.txt", "r")
  11. for line in file:
  12.   line = line.replace("\n", "")
  13.   for word in line.split(" "):
  14.     numbers.append(int(word))
  15.  
  16. for step in range(25):
  17.   new_numbers = []
  18.   for number in numbers:
  19.     if number == 0:
  20.       new_numbers.append(1)
  21.       continue
  22.     word = str(number)
  23.     if len(word) % 2 == 0:
  24.       half_length = int(len(word) / 2)
  25.       new_numbers.append(int(word[:half_length]))
  26.       new_numbers.append(int(word[half_length:]))
  27.       continue
  28.     new_numbers.append(number * 2024)
  29.   numbers = new_numbers
  30.  
  31. print (len(numbers))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement