PAT排名汇总(25 分)

计算机程序设计能力考试(Programming Ability Test,简称PAT)旨在通过统一组织的在线考试及自动评测方法客观地评判考生的算法设计与程序设计实现能力,科学的评价计算机程序设计人才,为企业选拔人才提供参考标准(网址http://www.patest.cn)。

每次考试会在若干个不同的考点同时举行,每个考点用局域网,产生本考点的成绩。考试结束后,各个考点的成绩将即刻汇总成一张总的排名表。

现在就请你写一个程序自动归并各个考点的成绩并生成总排名表。

输入格式:

输入的第一行给出一个正整数N(≤100),代表考点总数。随后给出N个考点的成绩,格式为:首先一行给出正整数K(≤300),代表该考点的考生总数;随后K行,每行给出1个考生的信息,包括考号(由13位整数字组成)和得分(为[0,100]区间内的整数),中间用空格分隔。

输出格式:

首先在第一行里输出考生总数。随后输出汇总的排名表,每个考生的信息占一行,顺序为:考号、最终排名、考点编号、在该考点的排名。其中考点按输入给出的顺序从1到N编号。考生的输出须按最终排名的非递减顺序输出,获得相同分数的考生应有相同名次,并按考号的递增顺序输出。

输入样例:

  1. 2
  2. 5
  3. 1234567890001 95
  4. 1234567890005 100
  5. 1234567890003 95
  6. 1234567890002 77
  7. 1234567890004 85
  8. 4
  9. 1234567890013 65
  10. 1234567890011 25
  11. 1234567890014 100
  12. 1234567890012 85

输出样例:

  1. 9
  2. 1234567890005 1 1 1
  3. 1234567890014 1 2 1
  4. 1234567890001 3 1 2
  5. 1234567890003 3 1 2
  6. 1234567890004 5 1 4
  7. 1234567890012 5 2 2
  8. 1234567890002 7 1 5
  9. 1234567890013 8 2 3
  10. 1234567890011 9 2 4
  1. #include <iostream>
  2. #include <cstring>
  3. #include <string>
  4. #include <algorithm>
  5. #include <queue>
  6. using namespace std;
  7. struct node
  8. {
  9. string s;
  10. int fs;
  11. int bh;//bian h
  12. int dp;
  13. friend bool operator <(node x,node y)
  14. {
  15. if(x.fs==y.fs)
  16. return x.s > y.s;
  17. else return x.fs<y.fs;
  18. }
  19. }a[];
  20. bool cmp(node x,node y)
  21. {
  22. return x.fs>y.fs;
  23. }
  24. priority_queue<node>q;
  25. int main()
  26. {
  27. int n;
  28. cin>>n;
  29. int i,j;
  30. for(i=;i<=n;i++)
  31. {
  32. int k;
  33. cin>>k;
  34. for(j=;j<=k;j++)
  35. {
  36. cin>>a[j].s>>a[j].fs;
  37. a[j].bh=i;
  38. }
  39. sort(a+,a++k,cmp);
  40. int mm=-;
  41. int o=;
  42. for(j=;j<=k;j++)
  43. {
  44. if(mm!=-&&mm==a[j].fs)
  45. {
  46. a[j].dp=o-;
  47. o++;
  48. }
  49. else
  50. {
  51. a[j].dp=o;
  52. o++;
  53. }
  54. mm=a[j].fs;
  55. q.push (a[j]);
  56. }
  57. }
  58. int o=;
  59. int mm=-;
  60. while(!q.empty ())
  61. {
  62. node x=q.top();q.pop();;
  63. if(mm!=-&&mm==x.fs)
  64. {
  65. cout<<x.s<<" "<<o-<<" "<<x.bh<<" "<<x.dp;
  66. o++;
  67. }
  68. else
  69. {
  70. cout<<x.s<<" "<<o++<<" "<<x.bh<<" "<<x.dp;
  71. }
  72. mm=x.fs;
  73. if(!q.empty ()) cout<<endl;
  74. }
  75. return ;
  76. }

PTA PAT排名汇总(25 分)的更多相关文章

  1. PTA数据结构与算法题目集(中文) 7-41PAT排名汇总 (25 分)

    PTA数据结构与算法题目集(中文)  7-41PAT排名汇总 (25 分) 7-41 PAT排名汇总 (25 分)   计算机程序设计能力考试(Programming Ability Test,简称P ...

  2. PTA 树的同构 (25分)

    PTA 树的同构 (25分) 输入格式: 输入给出2棵二叉树树的信息.对于每棵树,首先在一行中给出一个非负整数N (≤10),即该树的结点数(此时假设结点从0到N−1编号):随后N行,第i行对应编号第 ...

  3. PTA 7-1 还原二叉树 (25分)

    PTA 7-1 还原二叉树 (25分) 给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度. 输入格式: 输入首先给出正整数N(≤50),为树中结点总数.下面两行先后给出先序和中序遍历 ...

  4. PTA 07-图6 旅游规划 (25分)

    题目地址 https://pta.patest.cn/pta/test/15/exam/4/question/717 5-9 旅游规划   (25分) 有了一张自驾旅游路线图,你会知道城市间的高速公路 ...

  5. PTA 05-树8 File Transfer (25分)

    题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/670 5-8 File Transfer   (25分) We have a netwo ...

  6. PTA 03-树2 List Leaves (25分)

    题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/666 5-4 List Leaves   (25分) Given a tree, you ...

  7. PTA - - 06-图1 列出连通集 (25分)

    06-图1 列出连通集   (25分) 给定一个有NN个顶点和EE条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N-1N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发, ...

  8. PTA 旅游规划(25 分)

    7-10 旅游规划(25 分) 有了一张自驾旅游路线图,你会知道城市间的高速公路长度.以及该公路要收取的过路费.现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径.如果有若干条 ...

  9. 7-07. PAT排名汇总(25) (结构体 ZJU_PAT)

    题目链接:http://www.patest.cn/contests/ds/7-07 编程能力測试(Programming Ability Test,简称PAT)是浙江大学计算机科学与技术学院主办的专 ...

随机推荐

  1. crm开发(基于ssh)(1)

    搭建crm练习ssh环境 第一步 导入jar包 第二步 搭建struts2环境 (1)创建action,创建struts.xml配置文件,配置action (2)配置struts2的过滤器 第三步 搭 ...

  2. 回溯和DFS效率分析

    回溯和DFS效率分析 一.心得 多组数据记得初始化 两组样例,找圆点点的个数 6 9 ....#. .....# ...... ...... ...... ...... ...... #@...# . ...

  3. HTTP和HTTPS的区别和联系

    超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂 ...

  4. Android调用系统相机拍照保存照片很小解决方案

    保存图片小的一般操作步骤: 1. 调用系统相机 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityFo ...

  5. Xposed框架

    Xposed框架,很好的一款软件,早起百团大战.外卖大战时候,对拉新用户有很大的帮助,一直没时间整理,今天有看到一个公众账号介绍这款,准备大概整理下,做个记录. 整理下思路 新用户,无非就是1.手机号 ...

  6. 四十三 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理

    1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字段的类型以及相关属性elasticsearch会根据json源数据的基础类型猜测你想要的字段映射,将输入的数据转换成可搜索的索引项, ...

  7. linux上安装mysql以后root不能登录的解决办法

    今天心血来潮在linux上装了mysql,装完以后用命令mysql -uroot -p登录时提示 解决办法: 使用ps aux|grep mysql 查出pid 使用kill pid结束mysql进程 ...

  8. 51nod 1640 MST+二分

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1640 1640 天气晴朗的魔法 题目来源: 原创 基准时间限制:1 秒 ...

  9. Mac安装Virtualenv & PyCharm使用Virtualenv

    我们使用Python开发的时候,每个项目可能需要不同的Python版本,这时候我们就需要Virtualenv配置虚拟环境. Mac安装Virtualenv sudo pip install virtu ...

  10. 【deep learning精华部分】稀疏自编码提取高阶特征、多层微调完全解释及代码逐行详解

    我们前面已经讲了如何训练稀疏自编码神经网络,当我们训练好这个神经网络后,当有新的样本输入到这个训练好的稀疏自编码器中后,那么隐藏层各单元的激活值组成的向量就可以代表(因为根据稀疏自编码,我们可以用来恢 ...