题意:对给出的好汉按杀敌数从大到小排序,若相等,按字典序排。M个询问,询问名字输出对应的主排名和次排名。(排序之后)主排名是在该名字前比他杀敌数多的人的个数加1,次排名是该名字前和他杀敌数相等的人的个数加1,(也就是杀敌数相等,但是字典序比他小的人数加1)

Sample Input
5
WuSong 12
LuZhishen 12
SongJiang 13
LuJunyi 1
HuaRong 15
5 //m
WuSong
LuJunyi
LuZhishen
HuaRong
SongJiang
0

Sample Output
HuaRong 15
SongJiang 13
LuZhishen 12
WuSong 12
LuJunyi 1
3 2//主排名 次排名
5
3
1
2

 # include <iostream>
# include <cstdio>
# include <cstring>
# include <algorithm>
# include <string>
# include <map>
# include <cmath>
# include <queue>
# include <list>
# define LL long long
using namespace std ; struct ren
{
char name[] ;
int num;
}a[]; bool cmp(ren a,ren b)
{
if(a.num!=b.num)
return a.num > b.num;
return strcmp(a.name,b.name) <;
} map<string,int> mp1 ;
map<string,int> mp2 ; int main()
{
//freopen("in.txt","r",stdin) ;
int n , m ;
while(scanf("%d" , &n) != EOF)
{
if (n == )
break ;
mp1.clear() ;
mp2.clear() ;
int i , j ;
char ch[] ;
for (i = ; i < n ; i++)
scanf("%s %d" , a[i].name , &a[i].num) ;
sort(a , a+n , cmp) ;
int sum = ;
for (i = ; i < n ; i++)
{
printf("%s %d\n" , a[i].name , a[i].num) ;
} for (i = ; i < n ; i++)
{
sum=;
for(j = ; j < i ; j++)
{
if(a[j].num > a[i].num)
sum++;
}
mp1[a[i].name]=sum+;
}
for (i = ; i < n ; i++)
{
sum=;
for(j = ; j < i ; j++)
{
if(a[i].num==a[j].num)
sum++;
}
mp2[a[i].name]=sum+;
}
scanf("%d" , &m) ;
while(m--)
{
scanf("%s" , ch) ;
if (mp2[ch] == )
printf("%d\n" , mp1[ch]) ;
else
printf("%d %d\n" , mp1[ch] , mp2[ch]) ;
}
}
return ;
}

hdu 5131 (2014广州现场赛 E题)的更多相关文章

  1. hdu 5137 去掉一个点 使得最短路最大(2014广州现场赛 K题)

    题意:从2~n-1这几个点中任意去掉一个点,使得从1到n的最短路径最大,如果任意去掉一个点1~n无通路输出Inf. Sample Input4 51 2 31 3 71 4 502 3 43 4 23 ...

  2. hdu 5071(2014鞍山现场赛B题,大模拟)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5071 思路:模拟题,没啥可说的,移动的时候需要注意top的变化. #include <iostr ...

  3. hdu 5078 2014鞍山现场赛 水题

    http://acm.hdu.edu.cn/showproblem.php?pid=5078 现场最水的一道题 连排序都不用,由于说了ti<ti+1 //#pragma comment(link ...

  4. hdu 5078(2014鞍山现场赛 I题)

    数据 表示每次到达某个位置的坐标和时间 计算出每对相邻点之间转移的速度(两点间距离距离/相隔时间) 输出最大值 Sample Input252 1 9//t x y3 7 25 9 06 6 37 6 ...

  5. hdu 5112 (2014北京现场赛 A题)

    给出某个时刻对应的速度 求出相邻时刻的平均速度 输出最大值 Sample Input23 // n2 2 //t v1 13 430 31 52 0 Sample OutputCase #1: 2.0 ...

  6. HDU 5218 The E-pang Palace (简单几何—2014广州现场赛)

    题目链接:pid=5128">http://acm.hdu.edu.cn/showproblem.php? pid=5128 题面: The E-pang Palace Time Li ...

  7. hdu 5120(求两个圆环相交的面积 2014北京现场赛 I题)

    两个圆环的内外径相同 给出内外径 和 两个圆心 求两个圆环相交的面积 画下图可以知道 就是两个大圆交-2*小圆与大圆交+2小圆交 Sample Input22 30 00 02 30 05 0 Sam ...

  8. hdu 5122 (2014北京现场赛 K题)

    把一个序列按从小到大排序 要执行多少次操作 只需要从右往左统计,并且不断更新最小值,若当前数为最小值,则将最小值更新为当前数,否则sum+1 Sample Input255 4 3 2 155 1 2 ...

  9. zoj 3820(2014牡丹江现场赛B题)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5374 思路:题目的意思是求树上的两点,使得树上其余的点到其中一个点的 ...

随机推荐

  1. Java入门:Java IO概括

    I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道.在当今这个数据大爆炸时代,I/O 问题尤其突出,很容易成为一个性 ...

  2. Django paginator and Form

    django  提供的分页器 django 官方链接: https://docs.djangoproject.com/en/1.11/topics/pagination/ django提供了一些类来帮 ...

  3. P4777 【模板】扩展中国剩余定理(EXCRT)&& EXCRT

    EXCRT 不保证模数互质 \[\begin{cases} x \equiv b_1\ ({\rm mod}\ a_1) \\ x\equiv b_2\ ({\rm mod}\ a_2) \\ ... ...

  4. java基础-Math类常用方法介绍

    java基础-Math类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Math类概念 Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函 ...

  5. 华为手机不能连接android studio进行调试的解决办法

    出现情景:在开启了usb debugging(usb调试模式)后,AS(android studio)还是找不到真机. 解决办法:下载驱动精灵,检测是否安装了huawei的usb驱动,如果没有,安装成 ...

  6. 《剑指offer》 面试题53 :正则表达式匹配 Java

    引言:这道题情况比较复杂,边界条件较多,为了便于以后复习,整理一下.另外,由于C语言和Java对于字符串的操作存在不一样的地方,代码也存在改动. 题目:请实现一个函数用来匹配包含'.'和'*'的正则表 ...

  7. windows下静态编译pthread

    1. Building the library as a statically linkable library-------------------------------------------- ...

  8. Chrome浏览器F12讲解

    Chrome浏览器相对于其他的浏览器而言,DevTools(开发者工具)非常强大.这节课将为大家介绍怎么利用Chrome浏览器的开发者工具进行HTTP请求分析 Chrome浏览器讲解 Chrome 开 ...

  9. linux shell 获取当前日期/时间

    1. 当前日期 [root@Tomcat DFJR-ERP]# cur_date="`date +%Y-%m-%d`" [root@Tomcat DFJR-ERP]# echo $ ...

  10. Java并发编程原理与实战四十五:问题定位总结

    背景   “线下没问题的”. “代码不可能有问题 是系统原因”.“能在线上远程debug么”    线上问题不同于开发期间的bug,与运行时环境.压力.并发情况.具体的业务相关.对于线上的问题利用线上 ...