[ACM_数据结构] 竞赛排名
比赛排名
Time Limit:1000MS Memory Limit:32768K
Description:
欢迎参加浙江工业大学“亚信联创杯”程序设计大赛,本次竞赛采用与 ACM/ICPC 相同的排名规则。也就是说,首先按照在规定时间内,做出的题数进行排名。如果多支队伍解题数目相同,则根据总用时加入惩罚时间进行排名。总用时和惩罚时间由每道解答正确的试题的用时加上惩罚时间而成。每道试题用时将从竞赛开始到试题解答被判定为正确为止,其间每一次错误的运行将被加罚20分钟时间,未正确解答的试题不计时。
现在,我们得到了每支队伍的提交情况,你的任务就是给出排序后的结果。
Input:
只有一组数据,第一行为一个正整数 N (N <= 200) 。接下来 N 行,每行以一个队名开始,没有两个队的队名相同。这一行剩下的是该队正确提交时间和错误次数。一个负数表示该题未通过,一个非负数表示通过该题的时间,A(B) 表示通过时间为A,且之前错误过B次。
Output:
顺序输出队伍,每行由队名、解题数和总时间,并用一个空格隔开。
Sample Input:
10
实验班1124王志鹏 2(1) 27(1) 36(1) 43 13 -2 19 89(1) 16
实验班1826赵扬 2 -3 50 136(2) 3 -1 20(1) 73(2) 17
健行理0118汪伟 0 20 130 41(1) 3 123(3) 23 149(1) 6
实验班0222肖健伟 3 73(1) 41 50(1) 53 -5 88 105 109
友情备用账号8 3 -2 67(1) 59 11 18 53 13
实验班0708郭亚东 1 -10 12 102(3) 30 -6 48 70(1) 73
计算机0302*陈诗妮 12 -2 118(1) 87 39 47 74 93
实验班1807金科清 1 4 8 11(1) 12 81(3) 22 29 32
实验班1401边韵强 0 130(4) 17 26(1) 4(1) 31 39 42
健行理0205葛人楷 14(1) -13 85(1) 60(2) 23 19 133(2) 27
Sample Output:
实验班1807金科清 9 280
健行理0118汪伟 9 595
实验班1124王志鹏 8 325
实验班1401边韵强 8 409
实验班0222肖健伟 8 562
友情备用账号8 7 244
实验班1826赵扬 7 401
实验班0708郭亚东 7 416
健行理0205葛人楷 7 481
计算机0302*陈诗妮 7 490
#include<iostream>
#include<string>
#include<string.h>
#include<cstring>
#include<sstream>
#include<algorithm>
using namespace std;
class Student{
public:
string name;
int num;
int time;
public:
Student(){}
void Set(string s){
istringstream in(s);
string temp;
in>>name;
num=;time=;
while(in>>temp){
for(int i=;i<temp.length();i++)
if(temp[i]=='(' || temp[i]==')')temp[i]=' ';
istringstream in2(temp);
int iTime=,iWrongNum=;
if(in2>>iTime){
if(iTime>=){
num++;
time+=iTime;
if(in2>>iWrongNum){
time+=iWrongNum*;
}
}
}
}
}
bool operator<(Student& a){
if(num==a.num){
return (time==a.time ? name<a.name:time<a.time);
}else return num>a.num;
}
void print(){
cout<<name<<' '<<num<<' '<<time<<'\n';
}
};
int main(){
int N;cin>>N;
string s;getline(cin,s);
Student students[];
for(int i=;i<N;i++){
getline(cin,s);
students[i].Set(s);
}
sort(students,students+N);
for(int j=;j<N;j++)
students[j].print();
return ;
}
刚开始一直错最后把重载<改了一下就过啦!注意重载<时也要把次数、时间都相同的情况的情况考虑进去并把队名按照字母包顺序排列!!!
[ACM_数据结构] 竞赛排名的更多相关文章
- 【t076】竞赛排名
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 某市组织了一次中学生科技全能竞赛,每个选手要参加数学.物理.化学.天文.地理.生物.计算机和英语共八项 ...
- [ACM_数据结构] POJ2352 [树状数组稍微变形]
Description Astronomers often examine star maps where stars are represented by points on a plane and ...
- [ACM_数据结构] Color the ball [线段树水题][数组开大]
Description N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a <= b),lele便为骑上他的“小飞鸽"牌电动车从气球a开始到气球b依次 ...
- [ACM_数据结构] HDU 1166 敌兵布阵 线段树 或 树状数组
#include<iostream> #include<cstdio> #include<memory.h> using namespace std; ]; //- ...
- [ACM_数据结构] 线段树模板
#include<iostream> #include<cmath> using namespace std; #define maxn 200005 class Node{ ...
- 山东省第四届ACM大学生程序设计竞赛解题报告(部分)
2013年"浪潮杯"山东省第四届ACM大学生程序设计竞赛排名:http://acm.upc.edu.cn/ranklist/ 一.第J题坑爹大水题,模拟一下就行了 J:Contes ...
- 03day2
03day1 不说了,图论题因为没有把加边的过程放到循环里导致只有 10 分.(不要吐槽我啊...) 竞赛排名 排序 [问题描述] [输入] 文件的第一行为参赛总人数 N(1≤N≤1000),从第 ...
- UVa 10258 - Contest Scoreboard
题目大意:关于acm竞赛排名的题目,对于参赛者首先按做出的题目排名,然后是罚时,最后是编号. 多关键字域排序问题. #include <cstdio> #include <cstri ...
- Lavarel artisan 命令
[alex@iZ25c5aeyiiZ yiqizou3.0]# php artisan list Laravel Framework version Usage: command [options] ...
随机推荐
- 并查集(HDOJ 1856)
并查集 英文:Disjoint Set,即“不相交集合” 将编号分别为1…N的N个对象划分为不相交集合, 在每个集合中,选择其中某个元素代表所在集合. 常见两种操作: n 合并两个集合 ...
- 三天没有写题了,罪过!--Hash Table Start
(1)Island Perimeter 解题思路: 在矩阵上循环并记录岛(1)的个数;如果当前节点是岛,则检查其是否具有任何右邻居或下邻居,有的话邻居计数加1 ;岛的周长结果为islands * 4 ...
- Installshield 打包安装包心得
制作简单的安装软件 声明:下面的教程,是把读者当做完全没接触过IS的角度来制作的. 1. 启动InstallShield 12.建立一个InstallShield MSI Project,如图: 2 ...
- 关于“ora-01483:DATE或NUMBER赋值变量的长度无效”的问题
关于“ora-01483:DATE或NUMBER赋值变量的长度无效”的问题 出现这样的问题,一般都是驱动不匹配的原因导致的
- DIOCP之获取在线用户列表
通过获取tcpserver.getonlinecontextlist来得到在线列表 procedure TfrmMain.btn_refreshClick(Sender: TObject);var l ...
- jquery实现页面动态切换的方法--toggleClass(className)
$(function() { $(".A").click(function() { $(this).toggleClass("B"); }); }); 当点击带 ...
- Extjs学习笔记--Ext.tree.Panel
Ext.create('Ext.tree.Panel', { title: 'Simple Tree', width: 200, height: 150, store: store, rootVisi ...
- C# 代码页获取input的值
<input id="aa" name="iaa" type="text" /> Label1.Text = Request.F ...
- log4net配置与初始化
1.配置文件: <?xml version="1.0" encoding="utf-8" ?> <configuration> &l ...
- Angular.js参考
http://www.cnblogs.com/popo123/p/5673955.html