我连黄题都调不出来了,好菜。
#include<bits/stdc++.h>
#define endl '\n'
typedef long long ll;
using namespace std;
char t[200005],s[20005];
unordered_map<int,int> m;
char ch;
int size,maxx,l,r,n = 1,len;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
while((t[n] = getchar()) != EOF)n++;n--;
for(int i = 1;i <= n;i++){
if(isalpha(t[i]))s[++len] = tolower(t[i]),m[len] = i;
}
for(int i = 1;i <= len;i++){
int j = i - 1,k = i + 1;
while(j >= 1 && k <= len && s[j] == s[k])j--,k++;
j++,k--;
if(k - j + 1 > maxx)maxx = k - j + 1,l = j,r = k;
}
cout << r - l + 1 << endl;
for(int i = m[l];i <= m[r];i++)cout << t[i];
}