Advertisement
serega1112

podstroka

Dec 15th, 2020
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.50 KB | None | 0 0
  1.  
  2. n, k = map(int, input().split())
  3. s = input()
  4.  
  5. memo = [0] * 26
  6. flag = False
  7. l = r = 0
  8. best_l = best_r = 0
  9.  
  10. while r < n:
  11.     order = ord(s[r]) - ord('a')
  12.     memo[order] += 1
  13.     r += 1
  14.     if memo[order] > k:
  15.         flag = True
  16.     elif r - l > best_r - best_l:
  17.         best_l = l
  18.         best_r = r
  19.  
  20.     while flag:
  21.         order = ord(s[l]) - ord('a')
  22.         memo[order] -= 1
  23.         if memo[order] == k:
  24.             flag = False
  25.         l += 1
  26.  
  27. print(best_r - best_l, best_l + 1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement