为啥爆0啊!自己测试样例都是对的 求大佬解答
查看原帖
为啥爆0啊!自己测试样例都是对的 求大佬解答
1252790
qc111楼主2024/3/14 14:05
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<map>
#include<queue>
#include<cctype>
#include<cmath>
#include<algorithm>
#include<stack>
#include<vector>
using namespace std;
char s[20005],c[20005];
int pos[20005],st,en;

int main(){
    int i=-1,j=-1;
    while(scanf("%c",&s[++i])!=EOF){
    	if(s[i]>='A'&&s[i]<='Z') c[++j]=s[i]+32,pos[j]=i;
    	else if(s[i]>='a'&&s[i]<='z') c[++j]=s[i],pos[j]=i;
	}
	int res=0;
	for(i=1;i<j;i++){
		int l=i-1,r=i+1;
		while(l>=0&&r<=j&&c[l]==c[r]) l--,r++;
		if(res<r-l-1){
			res=r-l-1;
			st=pos[l+1];
			en=pos[r-1];
		}
		l=i,r=i+1;
		while(l>=0&&r<=j&&c[l]==c[r]) l--,r++;
		if(res<r-l-1){
			res=r-l-1;
			st=pos[l+1];
			en=pos[r-1];
		}
	}
	printf("%d\n%",res);
	for(i=st;i<=en;i++) cout<<s[i];
	return 0;
}
2024/3/14 14:05
加载中...