Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.80 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <set>
  4. #include <algorithm>
  5.  
  6. using namespace std;
  7.  
  8. int main() {
  9.     std::ios_base::sync_with_stdio(false);
  10.     cin.tie();
  11.  
  12.     int n, k;
  13.     cin >> n >> k;
  14.  
  15.     vector<int> a(n);
  16.     vector<int> cnt(26);
  17.     set<int> uniq;
  18.     vector<int> res;
  19.  
  20.     int l = 0;
  21.  
  22.     for (int r = 0; r < n; r++) {
  23.         cin >> a[r];
  24.  
  25.         cnt[a[r]]++;
  26.         uniq.insert(a[r]);
  27.  
  28.         if (uniq.size() > k) {
  29.             res.push_back(r - l);
  30.  
  31.             while (uniq.size() > k) {
  32.                 cnt[a[l]]--;
  33.                 if (cnt[a[l]] == 0)
  34.                     uniq.erase(a[l]);
  35.                 l++;
  36.             }
  37.         }
  38.     }
  39.    
  40.     res.push_back(n - l);
  41.     sort(res.begin(), res.end());
  42.  
  43.     cout << res[res.size() - 1] << " ";
  44.     int count = 0;
  45.     for (int i = res.size() - 1; (i >= 0 && res[i] == res[res.size() - 1]); i--)
  46.         count++;
  47.     cout << count << '\n';
  48.  
  49.     return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement