Advertisement
Guest User

23b

a guest
Dec 23rd, 2020
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.85 KB | None | 0 0
  1.  
  2. f = open("input.txt").read().strip().split("\n")
  3.  
  4. inp = f[0]
  5.  
  6. cups = list(map(int, list(inp)))
  7. mi = min(cups)
  8. oldma = max(cups)
  9. cups = cups + [i for i in range(oldma + 1, 1000001)]
  10. ma = 1000000
  11.  
  12. d = {}
  13. for i in range(1, len(cups)):
  14.     d[cups[i - 1]] = cups[i]
  15. print(i)
  16. d[cups[i]] = cups[0]
  17.    
  18. d[-1] = cups[0]
  19. start = -1
  20.  
  21.  
  22. for i in range(10000000):
  23.     if i % 1000000 == 0:
  24.         print(i)
  25.        
  26.     first = d[start]
  27.     x = d[first]
  28.     y = d[x]
  29.     z = d[y]
  30.     firstnext = d[z]
  31.     dest = first - 1
  32.     while(True):
  33.         if dest < mi:
  34.             dest = ma
  35.         if dest not in [x,y,z,first]:
  36.             destnext = d[dest]
  37.             d[dest] = x
  38.             d[z] = destnext
  39.             break
  40.         else:
  41.             dest -= 1
  42.     d[first] = firstnext
  43.     start = first
  44.  
  45. one = d[1]
  46. two = d[one]
  47. print(one * two)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement