using namespace std;
char a[20][102]={0};
int n;
int main(){
scanf("%d", &n);
getchar();
for(int i=0; i<n; ++i){
int ch;
int j=1;
while((ch=getchar())!='\n'){
a[i][j]=ch;
++j;
}
a[i][j]=-1;
a[i][0]=j+48-1;
}
int maxno=0; //最大值的序号
int maxn=0; //比较时最大的位数
for(int i=0; i<n; ++i){
if(a[i][0]>maxn){ //如果找到比最大值位数还大的,则此为最大值,刷新最大位数
maxn=a[i][0];
maxno=i;
}
else if(a[i][0]==maxn){ //如果位数一样,则从高到低一位一位比较
for(int j=1; j<a[i][0]; ++j){
if(a[i][j]>a[maxno][j]){
maxno=i;
break;
}
}
}
}
printf("%d\n", maxno+1);
for(int j=1; a[maxno][j]>=0; ++j){
printf("%c",a[maxno][j]);
}
return 0;
}
Wrong Answer.wrong answer On line 1 column 1, read 5, expected 4.但我的输出是4啊,求助大佬