您的位置:首页 > 其它

【洛谷】宇宙总统

2020-04-05 12:14 78 查看

【洛谷】宇宙总统

题目描述
地球历公元 6036 年,全宇宙准备竞选一个最贤能的人当总统,共有 nn 个非凡拔尖的人竞选总统,现在票数已经统计完毕,请你算出谁能够当上总统。
输入格式
第一行为一个整数 nn,代表竞选总统的人数。
接下来有 nn 行,分别为第一个候选人到第 nn 个候选人的票数。
输出格式
共两行,第一行是一个整数 mm,为当上总统的人的号数。
第二行是当上总统的人的选票。
输入 #1
5
98765
12365
87954
1022356
985678
输出 #1
4
1022356
说明/提示
票数可能会很大,可能会到 100100 位数字。

题解
题目看着很唬人,实则是个纸老虎
这个题有很多做法,sort排序也可以不过我没有试过,毕竟题目说了数可能很长。数很长第一想到的就是string,所以这只是一个超级简单的string的大小比较,顺带标记一下位置
然而第一次没过,因为忘记了if(-1)也可执行,给各位提个醒。我就苦苦研究半天才找到问题。在这个题上无端浪费了很久:)

#include<bits/stdc++.h>
using namespace std;
string s,in;int n,flag;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>in;
if((in.size()>s.size())||(in.size()==s.size()&&in.compare(s)>0))
{
s=in;
flag=i;
}
}
cout<<flag<<endl<<s;
}

是不是超级简短

  • 点赞
  • 收藏
  • 分享
  • 文章举报
Liquor___ 发布了30 篇原创文章 · 获赞 1 · 访问量 768 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: