Advertisement
Josif_tepe

Untitled

Dec 16th, 2023
835
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.07 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5.  
  6. int main() {
  7.     ios_base::sync_with_stdio(false);
  8.     string s;
  9.     cin >> s;
  10.     int n = (int) s.size();
  11.     vector<int> v[26];
  12.     for(int i = 0; i < n; i++) {
  13.         v[s[i] - 'A'].push_back(i);
  14.     }
  15.     int res = 0;
  16.     for(int i = 0; i < n; i++) {
  17.         int c = s[i] - 'A';
  18.         for(int k = (int) v[c].size() - 1; k >= 0; k--) {
  19.             int p = v[c][k];
  20.             if(p <= i) break;
  21.             int sz = p - i + 1;
  22.             if(sz % 4 != 0) continue;
  23.             sz /= 4;
  24.             bool ok = true;
  25.             int cnt = 1;
  26.             for(int j = i; j < i + sz; j++) {
  27.                 if(s[j] != s[i + 2 * sz - cnt] or s[j] != s[j + 2 * sz] or s[j] != s[i + 4 * sz - cnt]) {
  28.                     ok = false;
  29.                     break;
  30.                 }
  31.                 cnt++;
  32.             }
  33.             if(ok) {
  34.                 res = max(4 * sz, res);
  35.                 i = p;
  36.                 break;
  37.             }
  38.         }
  39.     }
  40.     cout << res << endl;
  41.     return 0;
  42. }
  43.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement