找最长串存放在一个数组中,然后找最大值的数组输出即可
#include<iostream>
#include<cstdio>
#include<string.h>
using namespace std;
string str;
int dp[105];
int main(){
while(cin>>str){
memset(dp,0,sizeof(dp));
int length=0,max=0;
//处理数字字符串的大小
for(int i=0;str[i]!=0;){
if(str[i]>='0'&&str[i]<='9'){
int count=0;
do{
count++;
i++;
}while(str[i]>='0'&&str[i]<='9');
if(count>max) max=count;
dp[i-count]=count;
}else{
i++;
}
}
for(int i=0;str[i]!=0;i++){
if(dp[i]==max){
for(int j=i;j<i+max;j++){
cout<<str[j];
}
}
}
cout<<","<<max<<endl;
}
return 0;
}
京公网安备 11010502036488号