题目描述
地球历公元6036年,全宇宙准备竞选一个最贤能的人当总统,共有n个非凡拔尖的人竞选总统,现在票数已经统计完毕,请你算出谁能够当上总统。
输入输出格式
输入格式:
第一行为一个整数n,代表竞选总统的人数。
接下来有n行,分别为第一个候选人到第n个候选人的票数。
输出格式:
共两行,第一行是一个整数m,为当上总统的人的号数。
第二行是当上总统的人的选票。
输入输出样例
说明
票数可能会很大,可能会到100位数字。
n<=20
#include<iostream> #include<algorithm> #include<string> using namespace std; bool cmp(string a, string b) { return a.size() == b.size() ? a > b:a.size() > b.size(); //如果长度相同,就按字符降序,不同就按长度降序 } int main() { string a[30],b[30],maxa;//b[i]复制一下a[i] int n,ans;//ans标记第几个 cin >> n; for (int i = 1; i <= n; i++) { cin >> a[i]; b[i] = a[i]; } //有待使用strcpy() sort(a + 1, a + n + 1, cmp); for (int i = 1; i <= n; i++) { if (a[1] == b[i]) { ans = i; break; } } cout << ans << " " << a[1] << " "; }