省赛题目:阵前第一功
2017-05-27 22:50
155 查看
从现在开始,闲暇之余有空就敲几道竞赛题目,我都会放上来与大家分享交流;数据结构那块还会继续写下去,毕竟那才是饭碗。
阵前第一功
Time Limit: 1000 MS Memory Limit: 65536 KB 题目描述: A国每个国民都有一定战斗力,每年国家都要对人民的战斗力进行一次排序统计,他们的排序规矩是相同战斗力的排名一样,而且只占一个排序名额。比如, 有5个人:100,100,90,90,70. 两个100的并列第一,称为第一战斗力,两个90的并列第二,称为第二战斗力,依次类推……现在你想查询第K战斗力是多少? 输入描述: 先输入一个整数T,表示T(T<50)组数据。 每组第一行一个正整数N(1000>N>0),表示表示有N个人。接下里一行N个正整数ai(2^30>=ai>=0),表示每个人的战斗力。 接下输入一个正整数K(N>=K>0)。(保证输入都合法) 输出描述: 输出第K战斗力,输出占一行 输入样例: 2 5 100 90 90 100 70 2 10 1 2 3 3 3 400 3 4 3 1 4 输出样例: 90 2 分析:题目难度不大,我们利用sort()函数快排一次续,但注意是降序,因此我们要添个compare()函数,还有一部操作就是排序完后我们进行去重操作就OK了。 还是直接甩代码。
#include <iostream> #include <malloc.h> #include <algorithm> using namespace std; bool compare(int a, int b) { return a > b; } int main() { int T, n, k, temp, a[1000]; cin >> T; while(T--){ cin >> n; for(int i = 0; i < n; i++) cin >> a[i]; sort(a, a + n, compare); cin >> k; temp = a[0]; for(i = 1, --k; i < n && k; i++) if(a[i] != temp){ --k; temp = a[i]; } cout << temp << endl; } return 0; }
相关文章推荐
- 2005年百度之星初赛题目第一题(连续正整数)
- 16程序设计基础实验非OJ题目(第一、二次实验课)
- 270. 众数-计算机一2014 北邮机试题目第一题
- 1428:阵前第一功
- 微软全球学生大赛it挑战第一回合题目解析(1)
- 安徽省2016“京胜杯”程序设计大赛_B_阵前第一功
- 在字符串中删除特定的字符(字符串)。 题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。 例如,输入”They are students.”和”aeiou”, 则删除之后的第一个字符串
- TopCoder--2006年GOOGLE算法竞赛练习赛的题目第一题
- 我对《第三届360软件大赛--第一阶段题目》的解答
- 入坑pwn第一题,在我们学校最厉害的学长帮助下解决了这一道最简单的题目
- 2012百度之星第二场题目,A:度度熊就是要刷排名第一,B:网页聚类,C:度度熊的礼物,D:小王子的表演
- 【联想面试】面试第一站(带题目和答案)
- 腾讯2014春季实习生招聘 笔试题目 第一批次
- 【程序23】 题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。 问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大 两岁。问第2个人,说比第一个人大两岁。最后问第一
- 2012届华为校园招聘上机考试题目第一题和答案
- 2005年百度之星程序设计大赛试题初赛题目的第一题(求出一个整数的连续整数的和)
- 一道蛮好玩的题目——某顶尖游戏公司程序员笔试第一题(摔xbox)
- 阵前第一功
- 【蓝桥杯题目分析】2014年第五届——第一题:啤酒和饮料
- Java 编程题目 第一题