2014ACM/ICPC亚洲区广州站 Song Jiang's rank list
Song Jiang's rank listTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 512000/512000 K (Java/Others) Problem Description
《Shui Hu Zhuan》,also 《Water Margin》was written by Shi Nai'an -- an writer of Yuan and Ming dynasty. 《Shui Hu Zhuan》is one of the Four Great Classical Novels of Chinese literature. It tells a story about 108 outlaws. They came from different backgrounds (including scholars, fishermen, imperial drill instructors etc.), and all of them eventually came to occupy Mout Liang(or Liangshan Marsh) and elected Song Jiang as their leader.
In order to encourage his military officers, Song Jiang always made a rank list after every battle. In the rank list, all 108 outlaws were ranked by the number of enemies he/she killed in the battle. The more enemies one killed, one's rank is higher. If two outlaws killed the same number of enemies, the one whose name is smaller in alphabet order had higher rank. Now please help Song Jiang to make the rank list and answer some queries based on the rank list. Input
There are no more than 20 test cases.
For each test case: The first line is an integer N (0<N<200), indicating that there are N outlaws. Then N lines follow. Each line contains a string S and an integer K(0<K<300), meaning an outlaw's name and the number of enemies he/she had killed. A name consists only letters, and its length is between 1 and 50(inclusive). Every name is unique. The next line is an integer M (0<M<200) ,indicating that there are M queries. Then M queries follow. Each query is a line containing an outlaw's name. Output
For each test case, print the rank list first. For this part in the output ,each line contains an outlaw's name and the number of enemies he killed.
Then, for each name in the query of the input, print the outlaw's rank. Each outlaw had a major rank and a minor rank. One's major rank is one plus the number of outlaws who killed more enemies than him/her did.One's minor rank is one plus the number of outlaws who killed the same number of enemies as he/she did but whose name is smaller in alphabet order than his/hers. For each query, if the minor rank is 1, then print the major rank only. Or else Print the major rank, blank , and then the minor rank. It's guaranteed that each query has an answer for it. Sample Input
5 WuSong 12 LuZhishen 12 SongJiang 13 LuJunyi 1 HuaRong 15 5 WuSong LuJunyi LuZhishen HuaRong SongJiang 0
Sample Output
HuaRong 15 SongJiang 13 LuZhishen 12 WuSong 12 LuJunyi 1 3 2 5 3 1 2
|
题解:
(map,sort排序)
题意好难理解,醉了,其实挺简单的一道题,提议就是先把这个rank排名输出来,然后再对每一个给的名字输出比它杀的人多的人数+1,再输出跟它杀人相同的且字典序比它小的人数+1,如果人数是1就不输出;
代码:
#include<stdio.h>
#include<string>
#include<algorithm>
#include<string.h>
#include<map>
using namespace std;
const int MAXN=;
struct Node{
char s[];
int num;
};
Node dt[MAXN];
int cmp(Node a,Node b){
if(a.num!=b.num)return a.num>b.num;
else if(strcmp(a.s,b.s)<)return ;
else return ;
}
map<string,int>mp;
int main(){
char temp[];
int N,M,k,a,b,flot;
while(~scanf("%d",&N),N){
mp.clear();
for(int i=;i<N;i++)scanf("%s%d",dt[i].s,&dt[i].num);
sort(dt,dt+N,cmp);
for(int i=;i<N;i++)
{
printf("%s %d\n",dt[i].s,dt[i].num);
mp[dt[i].s]=i+;
}
scanf("%d",&M);
while(M--){
scanf("%s",temp);
for(int i=;i<N;i++){
if(strcmp(dt[i].s,temp)==)a=dt[i].num;
}
flot=;k=;
for(int i=;i<N;i++){
if(dt[i].num>a)k++;
if(strcmp(dt[i].s,temp)<=)if(a==dt[i].num)flot++;
}
if(flot>)printf("%d %d\n",k+,flot);
else printf("%d\n",k+);
}
}
return ;
}
2014ACM/ICPC亚洲区广州站 Song Jiang's rank list的更多相关文章
- HDU 5131.Song Jiang's rank list (2014ACM/ICPC亚洲区广州站-重现赛)
Song Jiang's rank list Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 512000/512000 K (Java ...
- HDU 5127.Dogs' Candies-STL(vector)神奇的题,set过不了 (2014ACM/ICPC亚洲区广州站-重现赛(感谢华工和北大))
周六周末组队训练赛. Dogs' Candies Time Limit: 30000/30000 MS (Java/Others) Memory Limit: 512000/512000 K ( ...
- HDU 5135.Little Zu Chongzhi's Triangles-字符串 (2014ACM/ICPC亚洲区广州站-重现赛)
Little Zu Chongzhi's Triangles Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 512000/512000 ...
- 2014ACM/ICPC亚洲区广州站 北大命题
http://acm.hdu.edu.cn/showproblem.php?pid=5131 现场赛第一个题,水题.题意:给水浒英雄排序,按照杀人数大到小,相同按照名字字典序小到大.输出.然后对每个查 ...
- 2014ACM/ICPC亚洲区广州站题解
这一场各种计算几何,统统没有做. HDU 5129 Yong Zheng's Death HDU 5136 Yue Fei's Battle
- 2014ACM/ICPC亚洲区北京站
1001 A Curious Matt 求一段时间内的速度单位时间变化量,其实就是直接求出单位时间内的,如果某段时间能达到最大那么这段时间内必定有一个或一小段单位时间内速度变化是最大的即局部能达到最 ...
- Hdu OJ 5113 Black And White (2014ACM/ICPC亚洲区北京站) (搜索)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5113 题目大意:有k种颜色的方块,每种颜色有ai个, 现在有n*m的矩阵, 问这k种颜色的方块能否使任 ...
- Hdu OJ 5115 Dire Wolf (2014ACM/ICPC亚洲区北京站) (动态规划-区间dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5115 题目大意:前面有n头狼并列排成一排, 每一头狼都有两个属性--基础攻击力和buff加成, 每一头 ...
- 2014ACM/ICPC亚洲区北京站 上交命题
A http://acm.hdu.edu.cn/showproblem.php?pid=5112 输入n个时刻和位置,问那两个时刻间速度最快. 解法:按照时间排序,然后依次求相邻两个之间的速度,速度= ...
随机推荐
- registered the JBDC driver [oracle.jdbc.OracleDriver] but failed to unregister it when the web application was stopped. (转)
最近项目中遇见一问题,在开发环境没有问题的代码,到了生产环境就会报如下错误: 严重: A web application registered the JBDC driver [oracle.jd ...
- CSS 注意事项
使用css缩写 使用缩写可以帮助减少你CSS文件的大小,更加容易阅读. 明确定义单位,除非值为0 忘记定义尺寸的单位是CSS新手普遍的错误.在HTML中你可以只写width="100&q ...
- ios 开发指南
苹果Xcode帮助文档阅读指南 iOS开发官方文档汇总 翻译"iPhone SDK 开发"之UIKit使用… iOS中arc的设置与使用
- 带有OUTPUT的INSERT,DELETE,UPDATE
原文地址:http://blog.sina.com.cn/s/blog_71460d950100nld2.html OUTPUT是SQL SERVER2005的新特性.可以从数据修改语句中返回输出.可 ...
- optics matlab实现
关于optics算法的一些基本概念,在此一一忽略. 先求得所有节点的核心距离,用cd矩阵表示: 然后对每个节点进行处理,这个时候不需要考虑该节点是不是核心对象,按顺序取节点,如果该拓展点是核心对象,处 ...
- 【Android Training UI】创建自定义Views(Lesson 1 - 创建一个View类)
发布在我的网站 http://kesenhoo.github.io/blog/2013/06/30/android-training-ui-creating-custom-views-lesson-1 ...
- MTK Android4.0.3 ICS 添加缅甸语Myanmar
最近几个项目需要添加缅甸语,借助网络资源,同时结合自身实践,成功添加缅甸语,现分享经验如下. 一. 前期工作: 准备Myanmar字库,下载地址:http://www.myordbok.com/mya ...
- JavaScript 回车 焦点切换(摘抄)
<!-- 这是回车转换行的代码段--> <script language='javascript' for='document' event='onkeydown'> if(e ...
- Javascript 【JSON对象】
var box = JSON.parse(json); //将字符串解析为JSON var json = JSON.stringify(box); //讲JSON转换为字符串 var b ...
- css3文本效果
CSS3 包含多个新的文本特性. 在本章中,您将学到如下文本属性: 1. text-shadow 2. word-wrap 浏览器支持 Internet Explorer 10.Firefox.Chr ...