zhukov000

Chinese clock

Dec 15th, 2019
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.65 KB | None | 0 0
  1. n = int(input())
  2. M = 60 * 60 * 12
  3. cnt = [0] * M
  4. for i in range(n):
  5.   h, m, s = map(int, input().split(':'))
  6.   cnt[(h - 1) * 3600 + m * 60 + s] += 1
  7.  
  8. times = []
  9. for i in range(M):
  10.   times += [i] * cnt[i]
  11.  
  12. for i in range(n):
  13.   times.append(times[i] + M)
  14.  
  15. prev_sum = 0
  16. for i in range(1, n):
  17.   prev_sum += (times[i] - times[i-1]) * i
  18.  
  19. j = n - 1
  20. mins = prev_sum
  21. for i in range(n, 2*n-1):
  22.   prev_sum += (times[i] - times[i-1]) * (n-1) - (times[i-1] - times[i-n])
  23.   if prev_sum < mins or prev_sum == mins and j == n - 1:
  24.     mins = prev_sum
  25.     j = i - n
  26. ans = times[j]
  27. print("%d:%02d:%02d" % (ans // 3600 + 1, ans % 3600 // 60, ans % 60 ))
Advertisement
Add Comment
Please, Sign In to add comment