RE了求助
查看原帖
RE了求助
1785911
asuka_qwq楼主2025/7/21 15:54
#include<bits/stdc++.h>
#define int long long
using namespace std;

const int N=1e7+7;
int pi[N];
string a;
vector<char>s;

signed main(){
    ios::sync_with_stdio(NULL);
    cin.tie(0);cout.tie(0);

    int t;cin>>t;
    for(int i=0;i<t;i++){
    	cin>>a[i];
	}
	for(int i=t-1;i>=0;i--){
		s.push_back(a[i]);
	}
	s.push_back('#');
	for(int i=0;i<t;i++){
		s.push_back(a[i]);
	}
//	for(int i=0;i<2*t+1;i++){
//		cout<<s[i];
//	} 
//	cout<<'\n';
	int n=s.size();
//    cout<<n<<'\n';
	for(int i=1;i<n;i++){
		int j=pi[i-1];
		while(j>0&&s[i]!=s[j]){
			j=pi[j-1];
		}
		if(s[i]==s[j]){
			j++;
		}
		pi[i]=j;
	} 
//	for(int i=0;i<2*t+1;i++){
//		cout<<pi[i]<<' ';
//	} 
	cout<<t-pi[2*t];
    return 0;
}
2025/7/21 15:54
加载中...