当前位置:网站首页>1025 PAT Ranking
1025 PAT Ranking
2022-06-27 19:50:00 【Brosto_ Cloud】
Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test is supposed to run simultaneously in several places, and the ranklists will be merged immediately after the test. Now it is your job to write a program to correctly merge all the ranklists and generate the final rank.
Input Specification:
Each input file contains one test case. For each case, the first line contains a positive number N (≤100), the number of test locations. Then N ranklists follow, each starts with a line containing a positive integer K (≤300), the number of testees, and then K lines containing the registration number (a 13-digit number) and the total score of each testee. All the numbers in a line are separated by a space.
Output Specification:
For each test case, first print in one line the total number of testees. Then print the final ranklist in the following format:
registration_number final_rank location_number local_rank
The locations are numbered from 1 to N. The output must be sorted in nondecreasing order of the final ranks. The testees with the same score must have the same rank, and the output must be sorted in nondecreasing order of their registration numbers.
Sample Input:
2
5
1234567890001 95
1234567890005 100
1234567890003 95
1234567890002 77
1234567890004 85
4
1234567890013 65
1234567890011 25
1234567890014 100
1234567890012 85
Sample Output:
9
1234567890005 1 1 1
1234567890014 1 2 1
1234567890001 3 1 2
1234567890003 3 1 2
1234567890004 5 1 4
1234567890012 5 2 2
1234567890002 7 1 5
1234567890013 8 2 3
1234567890011 9 2 4#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
struct Stu {
string id;
int score;
int frank;
int lrank;
int lonum;
} a[50000];
bool cmp(Stu s1, Stu s2) {
return s1.score == s2.score ? s1.id < s2.id : s1.score > s2.score;
}
int main() {
int n, k, total = 0;
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> k;
for (int j = total + 1; j <= k + total; j++) {
cin >> a[j].id >> a[j].score;
a[j].lonum = i;
}
sort(a + total + 1, a + total + k + 1, cmp);
int t = 2;
a[total + 1].lrank = 1;
for (int j = total + 2; j <= k + total; j++) {
if (a[j].score == a[j - 1].score) {
a[j].lrank = a[j - 1].lrank;
} else {
a[j].lrank = t;
}
t++;
}
total += k;
}
sort(a + 1, a + total + 1, cmp);
int t = 2;
a[1].frank = 1;
for (int i = 2; i <= total; i++) {
if (a[i].score == a[i - 1].score) {
a[i].frank = a[i - 1].frank;
} else {
a[i].frank = t;
}
t++;
}
cout << total << endl;
for (int i = 1; i <= total; i++) {
cout << a[i].id << ' ' << a[i].frank << ' ' << a[i].lonum << ' ' << a[i].lrank << endl;
}
return 0;
}
边栏推荐
- 作为软件工程师,给年轻时的自己的建议(下)
- 如何封装调用一个库
- 基于STM32F103ZET6库函数外部中断实验
- Jinyuan's high-end IPO was terminated: it was planned to raise 750million Rushan assets and Liyang industrial investment were shareholders
- 实战回忆录:从Webshell开始突破边界
- NVIDIA Clara-AGX-Developer-Kit installation
- Photoshop layer related concepts layercomp layers move rotate duplicate layer compound layer
- GIS remote sensing R language learning see here
- 昱琛航空IPO被终止:曾拟募资5亿 郭峥为大股东
- # Leetcode 821. 字符的最短距离(简单)
猜你喜欢

Bit.Store:熊市漫漫,稳定Staking产品或成主旋律

binder hwbinder vndbinder

Bit.Store:熊市漫漫,稳定Staking产品或成主旋律

华大单片机KEIL报错_WEAK的解决方案

基于STM32F103ZET6库函数外部中断实验

《第五项修炼》(The Fifth Discipline):学习型组织的艺术与实践

External interrupt experiment based on stm32f103zet6 library function

openssl客户端编程:一个不起眼的函数导致的SSL会话失败问题

数仓的字符截取三胞胎:substrb、substr、substring

OpenSSL client programming: SSL session failure caused by an obscure function
随机推荐
binder hwbinder vndbinder
形参的默认值-及return的注意事项-及this的使用-和箭头函数的知识
从感知机到前馈神经网络的数学推导
现在网上买股票开户身份证信息安全吗?
429-二叉树(108. 将有序数组转换为二叉搜索树、538. 把二叉搜索树转换为累加树、 106.从中序与后序遍历序列构造二叉树、235. 二叉搜索树的最近公共祖先)
Bit.Store:熊市漫漫,稳定Staking产品或成主旋律
【云驻共创】高校数字化差旅建设“解决之道”
On thread safety
拥抱云原生:江苏移动订单中心实践
如何封装调用一个库
【建议收藏】ABAP随笔-EXCEL-4-批量导入-推荐
Mathematical derivation from perceptron to feedforward neural network
Buzzer experiment based on stm32f103zet6 library function
Bit.Store:熊市漫漫,稳定Staking产品或成主旋律
图扑数字孪生智慧能源一体化管控平台
Cucumber自动化测试框架使用
1027 Colors in Mars
一对一关系
经纬度分析
Market status and development prospect of resorcinol derivatives for skin products in the world in 2022