博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
水王争霸(NOIP2003 提高组)
阅读量:4684 次
发布时间:2019-06-09

本文共 2161 字,大约阅读时间需要 7 分钟。

描述

众所周知,IOIForum有很多水王,他们的发贴数是如此之多,以至于必须要用高精度数才能保存。

为了迎接国庆,IOIForum决定举行一次水王争霸赛,比赛的规则是将这些水王截止到2003年9月30日23时59分59秒这一刻所发的总贴数从大到小进行排序。每个水王当然都想取得尽量靠前的名次,所以他们竭尽全力,不择手段地进行灌水。

终于,激动人心的一刻到来了,2003年10月1日0时0分0秒,你作为裁判得到了每个水王的发贴数,现在,你的任务是公正地把这些水王按照发贴数从大到小进行排序。

输入格式

输入的第一行是一个1到1000的整数N,表示总共有N位水王参加了争霸赛。

以下依次给出每位水王的描述,一位水王的描述占据两行,第一行为一个仅由字母和数字组成的长度不超过20的字符串,代表这个水王的ID,第二行一个高精度的整数(非负数),代表这个水王的发贴数。注意,这个整数的首位没有不必要的0。

考虑到IOIForum的数据库是有限的,所有水王发贴数的总长度(注意,是总长度而不是总和)不会超过10000。

除了子母、数字和必要的换行,输入中不会出现空格等字符。

输出格式

依次输出按照发贴数从大到小排好序的各位水王的ID,每个ID占据单独的一行。不能有任何多余的字符。若几个ID的发贴数相同,则按照ID的字典顺序先后排列。

样例

样例输入 样例输出
6
lowai
1534534124561243453
zhouyuan
23453265344
Maolaoda
23442353452342
BuTaoCaiGuai
7568784573464
ArthurKing
97534892734723947
hyyylr
623893451

lowai

ArthurKing
Maolaoda
BuTaoCaiGuai
zhouyuan
hyyylr

 

限制

对于100%的数据时限=1s

1 #include
2 #include
3 #include
4 5 using namespace std; 6 7 struct shui 8 { 9 string id,num;10 }a[10010];11 12 int n;13 14 int main()15 {16 cin >> n;17 for(int i = 0;i < n;i++)18 {19 cin >> a[i].id >> a[i].num;20 }21 for(int i = 0;i < n;i++)22 {23 for(int j = 0;j < n-1;j++)24 {25 if(a[j].num.length() < a[j+1].num.length())26 swap(a[j], a[j+1]);27 else if(a[j].num.length() == a[j+1].num.length())28 {29 for(int k = 0;k < (int)a[j].num.length();k++)30 {31 if(a[j].num[k] < a[j+1].num[k])32 {33 swap(a[j], a[j+1]);34 break;35 }36 else if(a[j].num[k] > a[j+1].num[k])37 break;38 else if(k == (int)a[j].num.length()-1 && a[j].id > a[j+1].id)39 swap(a[j], a[j+1]);40 else41 continue;42 } 43 }44 }45 }46 for(int i = 0;i < n;i++)47 {48 cout << a[i].id << endl;49 }50 return 0;51 }
View Code

 

转载于:https://www.cnblogs.com/tanjiaqi/p/7529332.html

你可能感兴趣的文章
【bzoj4236】JOIOJI STL-map
查看>>
整理iOS开发常用的第三方资源
查看>>
Django基础
查看>>
修正Android基于ZXing的二维码扫描——横竖屏自由切换
查看>>
hadoop集群hdfs磁盘划分
查看>>
SQL中Where与Having的区别
查看>>
IOS 请求服务器的方式
查看>>
mysql python pymysql模块 获取插入的最后一条数据的自增ID lastrowid()方法
查看>>
/etc/sysctl.conf 控制内核相关配置文件
查看>>
Linux autojump命令
查看>>
linux sdcv命令
查看>>
BZOJ4836: [Lydsy1704月赛]二元运算【分治FFT】【卡常(没卡过)】
查看>>
lintcode159- Find Minimum in Rotated Sorted Array- medium
查看>>
控制连接超时
查看>>
MPU6050开发 -- 数据分析(转)
查看>>
springmvc入门详解
查看>>
Struts2和springmvc的区别
查看>>
用户名、密码等15个常用的js正则表达式
查看>>
对比多层字典是否相同函数
查看>>
用最简单的例子理解适配器模式(Adapter Pattern)
查看>>