0%

abc141e

次序需要考虑

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include<bits/stdc++.h>
using namespace std;
#define maxn 500010
#define MOD 998244353
#define ll long long
#define endl '\n'
string s;
int ans=0;
int main() {
int n;
cin>>n;
cin>>s;
/*for(int i=1;i<n;i++){
int cnt=0,imax=0;
for(int j=0;j<=i-1;j++){
if(s[i+cnt]==s[j]){
cnt++;
imax=max(imax,cnt);
}else{
cnt=0;
}
}
ans=max(ans,imax);
}
cout<<ans;*/
for(int i=1;i<n;i++){
int cnt=0,imax=0;
for(int j=0;j+i<n;j++){
if(s[j+i]==s[j]){
cnt++;
imax=max(imax,cnt);
}else{
cnt=0;
}
}
ans=max(ans,min(imax,i));
}
cout<<ans;
return 0;
}