大佬帮帮我
  • 板块灌水区
  • 楼主qwerrty
  • 当前回复3
  • 已保存回复3
  • 发布时间2023/2/12 21:50
  • 上次更新2023/10/24 00:55:33
查看原帖
大佬帮帮我
607270
qwerrty楼主2023/2/12 21:50
输入一个长度不超过16位的正整数,求其中最长的是回文数的一段的长度。例如:3476588592,其中最长的回文数是5885,长度为4。
输入
第一行有1个正整数N(1<=N<=10^16)。
输出
输出最长回文数长度。
样例输入 
234312
样例输出 
3
求大佬解释:
代码;

#include<bits/stdc++.h>
using namespace std;q
string a;
int n;
int main(){
    cin>>a;
    for(int i=0;i<a.size();i++){
        for(int j=i;j<a.size();j++){
    int k=0;
    for(int x=j,y=i;y<=x;y++,x--){
        if(a[y]!=a[x]){
            k=1;break;
        }
    }
    if(k==0)
    n=max(n,j-i+1);
    }
    }
    cout<<n;
    
    return 0;
}
2023/2/12 21:50
加载中...