[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] ...
随机推荐
- php 解决json_encode中文UNICODE转码问题
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似"\u***"的格式,如果想汉字不进行转码,这里提供三种方法 1.升级PHP,在PHP5. ...
- 《深入理解Nginx》阅读与实践(一):Nginx安装配置与HelloWorld
最近在读陶辉的<深入理解Nginx:模块开发与架构解析>,一是想跟着大牛练练阅读和编写开源代码的能力,二是想学学Nginx优秀的架构设计,三是想找一个点深入下Linux下网络编程的细节.侯 ...
- shell-自动更改LINUX服务器IP
#!/bin/bash echo echo == fi i= newgateway= newhostname= cat >>$ipfile<<EOF IPADDR=&q ...
- sql 查询分组后的数据总条数
select count(0) from (select investor_uid from lzh_borrow_investor group by investor_uid) as temp
- ElasticSearch 2 (10) - 在ElasticSearch之下(深入理解Shard和Lucene Index)
摘要 从底层介绍ElasticSearch Shard的内部原理,以及回答为什么使用ElasticSearch有必要了解Lucene的内部工作方式? 了解ElasticSearch API的代价 构建 ...
- eclipse新建项目,报错“Error: workspace\appcompat_v7\res\values-v21\styles_base.xml No resource found that matches the given name”
新建项目报错,不知道为什么,以前从未出现过的错误,把sdk更新之后,出现莫名错误,自己也是一知半解,在网上找了好久的错误,终于在一个english网站找到了解决方法,soga,从未觉得english如 ...
- Selenium2+python自动化26-js处理内嵌div滚动条
前言 前面有篇专门用js解决了浏览器滚动条的问题,生活总是多姿多彩,有的滚动条就在页面上,这时候又得仰仗js大哥来解决啦. 一.内嵌滚动条 1.下面这张图就是内嵌div带有滚动条的样子,记住它的长相.
- HashedWheelTimer 原理
HashedWheelTimer 是根据 Hashed and Hierarchical Timing Wheels: Data Structuresfor the Efficient Impleme ...
- ABAP BDC
REPORT程序中用BDC录入 DATA: GS_BDC TYPE BDCDATA, GT_BDC TYPE TABLE OF BDCDATA, GS_MSG TYPE BDCMSGCOLL, GT_ ...
- Java集合类之ArrayList
学习Java的集合类 (1)成员变量以及初始化 private static final int DEFAULT_CAPACITY = 10; private static final Object[ ...