Advertisement
SergeySterkhov

Untitled

Apr 29th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.56 KB | None | 0 0
  1. def f(l, a, d):
  2.     if l == len(a):
  3.         return len(a)
  4.     while d[a[l]] > 1:
  5.         d[a[l]] -= 1
  6.         l += 1
  7.         if l == len(a):
  8.             return len(a)
  9.     return l
  10.  
  11.  
  12. n, k = tuple(map(int, (input().split())))
  13. a = list(map(int, input().split()))
  14. l = 0
  15. d = {}
  16. m = (0, 0, 0)
  17. for i in range(n):
  18.     if a[i] not in d:
  19.         d[a[i]] = 1
  20.     else:
  21.         if a[l] == a[i]:
  22.             l += 1
  23.             l = f(l, a, d)
  24.         else:
  25.             d[a[i]] += 1
  26.     if len(d) >= k:
  27.         m = l, i, i - l
  28.         break
  29. print(m[0]+1, m[1]+1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement