Advertisement
Guest User

2

a guest
Sep 16th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.23 KB | None | 0 0
  1. n = int(input())
  2. a = input().split(" ")
  3. a = [int(item) for item in a]
  4. a.append(a[0])
  5. flag = True
  6. t = list()
  7. k = 1
  8. t.append(1)
  9. for i in range(1, n - 1):
  10.     if a[i] != a[i-1]:
  11.         if flag:
  12.             t.append(2)
  13.             flag = False
  14.         else:
  15.             t.append(1)
  16.             flag = True
  17.     else:
  18.         if flag:
  19.             t.append(1)
  20.         else:
  21.             t.append(2)
  22.  
  23. if 2 in t:
  24.     k = 2
  25.  
  26. if (a[n - 1] == a[n - 2]) and (a[n - 1] == a[n]):
  27.     if flag:
  28.         t.append(1)
  29.     else:
  30.         t.append(2)
  31. elif (a[n-1] != a[n-2]) and (a[n-1] != a[n]):
  32.     if t[n-2] != t[0]:
  33.         if k == 2:
  34.             t.append(3)
  35.             k = 3
  36.         else:
  37.             t.append(2)
  38.     else:
  39.         if flag:
  40.             t.append(2)
  41.             k = 2
  42.         else:
  43.             t.append(1)
  44. elif (a[n-1] != a[n-2]) and (a[n-1] == a[n]):
  45.     if t[n-2] != t[0]:
  46.         t.append(t[0])
  47.     else:
  48.         if flag:
  49.             t.append(2)
  50.         else:
  51.             t.append(1)
  52. else:
  53.     if t[n-2] != t[0]:
  54.         t.append(t[n-2])
  55.     else:
  56.         if flag:
  57.             t.append(2)
  58.         else:
  59.             t.append(1)
  60. t = [str(item) for item in t]
  61. ans = " ".join(t)
  62. print(k)
  63. print(ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement