Advertisement
zhukov000

Buffer. 10

Mar 30th, 2020
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.93 KB | None | 0 0
  1. n = int(input())
  2. buf = []
  3.  
  4. # k2 - количество четных чисел в буфере
  5. # k13 - количество нечетных чисел, делящихся на 13
  6. # k26 - количество четных чисел, делящихся на 13
  7.  
  8. k13 = k26 = k2 = k = 0
  9. for i in range(min(5,n)):
  10.   x = int(input())
  11.   if x % 2 == 0:
  12.     if x % 13 == 0:
  13.       k += i - k2
  14.       k26 += 1
  15.     else:
  16.       k += k13
  17.     k2 += 1
  18.   else:
  19.     if x % 13 == 0:
  20.       k += k2
  21.       k13 += 1
  22.     else:
  23.       k += k26
  24.   buf.append(x)
  25.  
  26. for i in range(5, n):
  27.   y = buf[i%5]
  28.   if y % 2 == 0:
  29.     if y % 13 == 0:
  30.       k26 -= 1
  31.     k2 -= 1
  32.   elif y % 13 == 0:
  33.     k13 -= 1
  34.  
  35.   x = int(input())
  36.   if x % 2 == 0:
  37.     if x % 13 == 0:
  38.       k += 4 - k2
  39.       k26 += 1
  40.     else:
  41.       k += k13
  42.     k2 += 1
  43.   else:
  44.     if x % 13 == 0:
  45.       k += k2
  46.       k13 += 1
  47.     else:
  48.       k += k26
  49.   buf[i%5] = x
  50. print(k)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement