puzzle17.py (292B)
1 spinlock_buffer = [0] 2 3 ptr = 0 4 step = 329 5 6 for i in range(1, 2018): 7 ptr = ((ptr + step) % len(spinlock_buffer)) + 1 8 spinlock_buffer.insert(ptr, i) 9 10 print spinlock_buffer[ptr + 1] 11 12 ptr = 0 13 14 for i in range(1, 50000001): 15 ptr = ((ptr + step) % i) + 1 16 if ptr == 1: 17 print i