乱七八糟

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述
一天,PIAOYI查看班级成绩时发现各种乱七八糟的数据,有点晕……但是他现在非常想知道排名情况,你能帮帮他吗?为了让问题简化,只给出n个同学的总成绩,然后需要你对所有同学的总成绩进行排名(从高到低)然后询问m次,每次询问的是总成绩排名是第xi名的同学有多少个?
注意:1)总成绩相等的同学排名是一样的,并列一个名次。
2)若排名在x同学前面的成绩有并列的,在对x排名时,要加上并列的同学.说的可能有些模糊,没关系,来个例子大家就明白了比如8个同学的成绩依次是:100 90 90 85 80 80 70 60他们的成绩排名依次是 1  2  2  4  5  5  7  8 ,明白了吧,亲.
输入
有多组测试数据,以EOF结束。
每组测试数据包含三行:第一行,输入n(0<=n<=100),m(0<=m<=n),第二行依次输入n个正整数Ai,分别代表n个同学的总成绩,第三行依次输入m个正整数,分别代表查询的名次。
输出
对于每组测试数据,请依次输出m次查询的结果。每个结果占一行。
样例输入
4 4
89 79 60 79
1 2 3 4
8 5
90 90 100 85 80 80 70 60
1 2 3 5 7
样例输出
1
2
0
1
1
2
0
2
1
思路:假设成绩没有重复,则排序后数组元素的下标就是它的排名(从1开始),有重复则成绩相同,排名相同
01.#include<stdio.h>
02.#include<algorithm>
03.using namespace std;
04.bool cmp(int a,int b) //对成绩从大到小排序
05.{
06.return a>b;
07.}
08.int main()
09.{
10.int i,j,n,m,cnt;
11.int rank[103],b[103],grade[103];
12.while(scanf("%d%d",&n,&m)!=EOF)
13.{
14.for(i=1;i<=n;i++)
15.scanf("%d",&grade[i]);
16.for(i=0;i<m;i++)
17.scanf("%d",&b[i]);
18.sort(grade+1,grade+n+1,cmp); //排序
19.rank[1]=1; //排序后第一个人的成绩 排名为1
20.for(i=2;i<=n;i++)
21.{
22.if(grade[i]==grade[i-1]) //成绩相同
23.rank[i]=rank[i-1]; //排名相同
24.else
25.rank[i]=i;
26.}
27.for(i=0;i<m;i++)
28.{
29.cnt=0;
30.for(j=1;j<=n;j++)
31.{
32.if(rank[j]==b[i])
33.cnt++;
34.}
35.printf("%d\n",cnt);
36.}
37.}
38.return 0;
39.}

NYOJ 595 乱七八糟相关推荐

  1. NYOJ 595 乱七八糟

    乱七八糟 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 一天,PIAOYI查看班级成绩时发现各种乱七八糟的数据,有点晕--但是他现在非常想知道排名情况,你能帮帮他吗?为 ...

  2. NYOJ - 595

    乱七八糟 时间限制: 1000 ms  |           内存限制: 65535 KB 难度: 1 描述 一天,PIAOYI查看班级成绩时发现各种乱七八糟的数据,有点晕--但是他现在非常想知道排 ...

  3. LeetCode 595 Big Countries: SQL的题

    LeetCode 595 Big Countries LeetCode题解专栏:LeetCode题解 LeetCode 所有题目总结:LeetCode 所有题目总结 大部分题目C++,Python,J ...

  4. NYOJ 30 Gone Fishing JAVA+解析

    Gone Fishing这道题目运用的多次折合成一次这种思想我首次见,我想的一个思路是,每次算一下鱼量和时间代价比,这个代码我没有敲,下面的代码是一位仁兄敲得,我研读了一下,做了一个注释,应该有利于后 ...

  5. 显示乱七八糟图片问题之解决

    今天早上在群里有网友求助说电脑程序中多出了很多乱七八糟的图片,不知道怎么回事.(具体请参阅"求助:显示乱七八糟图片解决方法征集"[url]http://starger.blog.5 ...

  6. Manacher算法 , 实例 详解 . NYOJ 最长回文

    51 Nod http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1089 Manacher 算法 定义数组 p[i]表示以i为 ...

  7. NYOJ 527 AC_mm玩dota

    AC_mm玩dota 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 大家都知道AC_mm比较喜欢玩游戏,特别是擅长war3这款经典游戏.某天AC_mm来到了VS平台上 ...

  8. ML与Information:机器学习与Information信息论之间那些七七八八、乱七八糟、剪不断理还乱的关系攻略

    ML与Information:机器学习与Information信息论之间那些七七八八.乱七八糟.剪不断理还乱的关系攻略 目录 ML与信息论 ML与熵 1.熵的基础知识 2.熵与分布的关系 3.最大熵模 ...

  9. Khadas VIM3 (Amlogic A311D) uboot去掉烦人的乱七八糟的打印1——BL2 BL3x

    BL2 BL30 BL31 DDRFW改造串口静默 BL2拖到IDA64,以ARM LittleEndian 64bit反汇编,很轻易的找到puts putchar函数, ROM:0000000000 ...

最新文章

  1. 一次性搞懂Spring Boot 注解原理与自动装配原理,图文并茂,万字长文!
  2. App Store遭到攻击后如何保护iPhone安全
  3. php取整函数ceil,floor,round,intval的区别
  4. 【脑经急转弯】—— 猜额头上的数字
  5. SonicWall宣布推出全新渠道伙伴计划,为中小型企业的网络安全提供可靠防护
  6. 软件工程 第二章 可行性研究
  7. android 版本 6.0升级包,EMUI 6.0系统刷机包
  8. 值得收藏!教你如何在火星直播中使用分享码
  9. 20172304 《程序设计与数据结构》第五周学习总结
  10. YARN原理及工作流程详解
  11. 数字电路设计入门(fpga/asic)
  12. 创新工场5位创业者2011创业感悟
  13. 高科技还是“智商税”?你怎么选
  14. m4a怎么转换成mp3
  15. 2021年清华大学电子系985经验贴(一)
  16. 数独技巧-基础摒除法
  17. 虚拟机启动失败:VMware Workstation and Device/Credential Guard are not compatible
  18. 微机原理与接口技术 第七章 常用接口技术(河北专升本计算机)
  19. 文件系统学习 RAID原理学习 RAID0 RAID1 RAID2 RAID3 RAID4 RAID5 RAID6 RAID10
  20. JS的jsoneditor,用来操作Json格式的界面;json-editor用来根据json数据生成界面

热门文章

  1. ThreadPoolExecutor的execute源码分析
  2. WordPress.com 开源,弃 PHP 改用 JavaScript
  3. Python map, reduce, filter和sorted
  4. 丁钧:移动,未来的王
  5. PPT快速制作精美3D柱状图
  6. how to prepare reading club
  7. ALGORITHM IMPORTANT QUESTIONS
  8. unite testing
  9. engineering likes?
  10. 【小松教你手游开发】【面试必读(编程基础)】堆和栈的区别(转过无数次的文章)...