这道题被我复杂化了
//洛谷 P1781 宇宙总统 AC代码 2022 01 27(C++)
#include<bits/stdc++.h>
using namespace std;
//定义结构体
struct node{
int e;
string s;
int p;
}a[21];
int n,m,maxn,maxl;
int main(){
cin>>n;
//输入与确定
for(int i=1;i<=n;i++){
cin>>a[i].s;
a[i].e=a[i].s.size();
a[i].p=i;
}
//按字符长度排序
for(int i=1;i<n;i++){
maxn=a[i].e;
maxl=i;
for(int o=i+1;o<=n;o++){
if(a[o].e>maxn){
maxn=a[o].e;
maxl=o;
}
}
swap(a[i],a[maxl]);
}
for(int i=1;i<=n;i++){
if(a[i].e!=a[1].e){
m=i;
break;
}
}
if(m==0) m=n;
//判断
for(int i=2;i<m;i++){
for(int o=0;o<a[1].e;o++){
if(a[1].s[o]!=a[i].s[o]){
if(a[1].s[o]<a[i].s[o]){
a[1].s=a[i].s;
a[1].p=a[i].p;
}
break;
}
}
}
/*
for(int i=1;i<=n;i++){
cout<<a[i].s;
printf(" %d %d\n",a[i].e,a[i].p);
}
*/
cout<<a[1].p<<endl<<a[1].s;
return 0;
}