饶学妹的比赛

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 336    Accepted Submission(s): 116

Problem Description
饶学妹组织了一场ACM赛制的比赛,大家纷纷慕名来参加。比赛中大家交题只会有两种结果:AC,WA。比赛结束了,饶学妹制作榜单啦。首先按AC题目的数目(重复AC一道题只算一次)从多到少排名;AC题目数目相同的同学按罚时(罚时计算方式为:单题罚时 = (首次AC该题目时间 + 首次AC之前WA的次数 * 20) min,总罚时 = 各题罚时之和;即某题目AC之后,对这道题目后续的提交均不计入罚时)从少到多排列;AC数目相同且罚时也相同的同学,按编号从小往大排序。
Input
第一行为n,m,k(1≤n≤1000,1≤m≤10000,1≤k≤10),分别表示参加比赛的人数、提交总次数和总题数。
之后一行为n个用空格分隔的字符串,表示n位参赛选手的姓名(每个字符串长度均不超过20,且仅含小写字母);
之后m行,每行均为  Timei   IDi   PIDi   Resulti ,(1≤ Timei ≤ Timei+1 ≤300,1≤ IDi ≤n,1≤ PIDi ≤k, Resulti ="AC"/"WA"),表示编号为 IDi 的选手在 Timei 时刻提交了编号为 PIDi 的题目,且结果为 Resulti .
Output
输出n行,按排名从高到低排列。每行分别输出该选手的姓名,过题数,总罚时,中间均为一个空格间隔
Sample Input
  
5 11 10 phx lsf zk rqy ch 1 1 1 AC 1 1 2 AC 2 1 3 AC 2 1 4 AC 3 2 2 WA 4 2 2 AC 5 3 2 AC 10 5 1 WA 20 5 2 WA 30 5 3 WA 40 5 4 WA
Sample Output
  
phx 4 6 zk 1 5 lsf 1 24 rqy 0 0 ch 0 0

分析:参加ACM比赛这么久,第一次做ACM榜单的规则题,纪念一下吧!

代码如下:

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;int name[1005][25];
struct Node {int oadd;int sum;int count;int wacnt[11];int vi[11];
}data[1005];int cmp(Node a,Node b)
{if(a.count!=b.count)return a.count>b.count;else if(a.sum!=b.sum)return a.sum<b.sum;elsereturn a.oadd<b.oadd;
}
int main()
{int n,m,k;int ti,id,pi;char re[10];while(~scanf("%d%d%d",&n,&m,&k)){memset(data,0,sizeof(data));for(int i=0;i<n;i++){scanf("%s",name[i]);data[i+1].oadd=i;}for(int i=0;i<m;i++){scanf("%d%d%d%s",&ti,&id,&pi,&re);if(re[0]=='W'){if(data[id].vi[pi]==0){data[id].wacnt[pi]++;}}else{if(data[id].vi[pi]==0){data[id].sum+=ti+data[id].wacnt[pi]*20;data[id].vi[pi]=1;data[id].count++;}}}sort(data+1,data+n+1,cmp);for(int i=1;i<=n;i++){printf("%s %d %d\n",name[data[i].oadd],data[i].count,data[i].sum);}}return 0;
}

2017杭电ACM集训队单人排位赛 - 2 饶学妹的比赛相关推荐

  1. 2017杭电ACM集训队单人排位赛 - 1(ALL题解)

    A. 看日出 看日出 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total ...

  2. 2017杭电ACM集训队单人排位赛 - 2 -1002 地狱飞龙 (辛普森公式求积分)(模板)

    题干: 最近clover迷上了皇室战争,他抽到了一种地狱飞龙,很开心.假设地域飞龙会对距离为d的敌人每秒造成k/d2k/d^2伤害.假设地域飞龙位于坐标轴原点,以每秒v1的速度向y轴正方向移动,敌人在 ...

  3. HDU - 2018杭电ACM集训队单人排位赛 - 1 - Problem C. 狙击敌人

    Problem C. 狙击敌人 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) ...

  4. 2018杭电ACM集训队单人排位赛 - 1Problem A. 内蒙创业

    Problem A. 内蒙创业 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) ...

  5. 杭电acm第2304题答案c语言,【转】杭电ACM试题分类

    注:网上搜的 第一篇 1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 ...

  6. 杭电acm2151题java的解法,杭电ACM题型分类

    杭电ACM题型分类 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.1048.1 ...

  7. 杭电ACM(HDUOJ)试题分类

    杭电ACM试题分类 第一篇 1001 这个就不用说了吧                      1002 简单的大数                            1003 DP经典问题,最 ...

  8. 杭电ACM题目类型整理

    版权声明:(╯3╰) 转载请注明: http://blog.csdn.net/bat67 杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 10 ...

  9. 【杭电ACM】1097 A hard puzzle

    [杭电ACM]1097  A hard puzzle http://acm.hdu.edu.cn/showproblem.php?pid=1097 先用int手写了算法结果竟然wrong answer ...

最新文章

  1. CMD安装/删除服务
  2. 如何把SAP CRM WebClient UI上某个字段高亮加粗显示
  3. 人工神经网络——笔记摘抄2
  4. 前端学PHP之文件操作(认真读读)
  5. BMVC 2020 各奖项公布!最佳论文可能就是你要的涨点神器
  6. c语言编程软件开机自动启动,C语言实现程序开机自启动
  7. 自考----怎么说我不爱你
  8. 调整数组使奇数全部都位于偶数前面
  9. 神经网络——深度学习应用于计算机视觉
  10. 证件照如何弄蓝白渐变色背景
  11. 定时删除虚拟服务器快照,ESXi6.0 设置自动删除快照脚本及计划任务
  12. Docer中使能GPU,GDB,perf
  13. Image Signal Processing(ISP)-第三章-BCL, WB, Gamma的原理和软件实现
  14. 计算机肉机,哪位高手指教下,电脑是否成为肉机怎么辨别哈??
  15. 弘辽科技:淘宝提升展现词好吗?淘宝展现词如何提升?
  16. 英文单词之说文解字(10)你真的用对“著名”了吗?
  17. 大津二值化算法(Otsu)
  18. cad怎么把图层英文变成中文_CAD图层标准中英文互译
  19. FAL:Flash 抽象层的使用
  20. java安装出现向导中断,在Macromedia Dreamweaver 8 完整安装之前向导已中断的解决办法...

热门文章

  1. 不用变量调用 同一个累加函数 -- struct A a 与 struct A *a 区别
  2. Zbrush基础操控与快捷键介绍
  3. 基于javaweb的私人牙医管理系统(java+springboot+html+layui+echarts+mysql)
  4. 【钉钉-场景化能力包】CRM系统促进广告平台高效获客
  5. SaleSmartly聊天机器人如何帮助您的电商业务(二)
  6. 矩阵分析与计算学习记录-向量范数与矩阵范数
  7. Excel 2010 SQL应用072 SQL获取母亲节的日期
  8. VB.NET中DateAndTime模块学习
  9. 阿里开源工作流框架 compileflow 上手使用
  10. AIDL oneway 以及in、out、inout参数的理解