题目描述
地球历公元 6036 年,全宇宙准备竞选一个最贤能的人当总统,共有 nn 个非凡拔尖的人竞选总统,现在票数已经统计完毕,请你算出谁能够当上总统。
输入格式
第一行为一个整数 nn,代表竞选总统的人数。
接下来有 nn 行,分别为第一个候选人到第 nn 个候选人的票数。
输出格式
共两行,第一行是一个整数 mm,为当上总统的人的号数。
第二行是当上总统的人的选票。
输入输出样例
输入
5
98765
12365
87954
1022356
985678
输出
4
1022356
说明/提示
票数可能会很大,可能会到 100 位数字。
1 ≤ n ≤ 20
思路:
以字符串读入,先比较字符串位数,位数大的票数多,位数相同的比较字符串大小(从左到右依次比较字符的ASCII值)
代码:
#include <bits/stdc++.h>
using namespace std;
int main ()
{
string l,m="";
int n,x,c;
cin>>n;
for (int i = 0; i < n; ++i) {
cin>>l;
if(l.size()>m.size() ||( l.size()==m.size() && l > m))
{
m=l;
x=i+1;
}
}
cout<<x<<"\n"<<m;
}