Advertisement
Ankit_132

D

Mar 15th, 2024
821
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.90 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. #define ll     long long
  6. #define _test   int _TEST; cin>>_TEST; while(_TEST--)
  7. #define ff     first
  8. #define ss     second
  9. #define pb     push_back
  10.  
  11. int main()
  12. {
  13.     _test
  14.     {
  15.         string s;
  16.         cin>>s;
  17.  
  18.         int n = s.size();
  19.         int ans = 0;
  20.  
  21.         vector<int> val(n);
  22.  
  23.         for(int len=1; len*2<=n; len++)
  24.         {
  25.             fill(val.begin(), val.end(), 0);
  26.  
  27.             for(int i=0; i+len<n; i++)
  28.                 val[i] = (s[i]==s[i+len] || s[i]=='?' || s[i+len]=='?');
  29.  
  30.             for(int i=1;i<n;i++)
  31.                 val[i] += val[i-1];
  32.  
  33.             if(val[len-1]==len)     ans = max(ans, 2*len);
  34.  
  35.             for(int i=len; i<n; i++)
  36.             {
  37.                 if(val[i]-val[i-len]==len)
  38.                     ans = max(ans, 2*len);
  39.             }
  40.         }
  41.  
  42.         cout<<ans<<"\n";
  43.     }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement