问题 F: 罚时计算器

时间限制: 1 Sec  内存限制: 128 MB
提交: 229  解决: 63
[提交][状态][讨论版]

题目描述

一般 ACM程序设计比赛都是五个小时。但是比赛结束时,DB(DataBase)发现总罚时很大,DB就想知道这总罚时算得对不对。但由于DB数学不是很好,想让你写个程序帮他计算总罚时。

罚时规则:

每道试题用时将从竞赛开始到试题解答被判定为正确为止,其间每一次提交运行结果被判错误的话将被加罚20分钟时间,未正确解答的试题不记时。也就是,通过的题目的罚时等于第一次通过时颗与比赛开始时刻的时间差加上第一次通过之前该题的错误次数乘以20分钟,总罚时等于所有通过的题目的罚时相加。比如:比赛12:00:00开始,DB在12:06:00提交A题错误WA,12:17:00提交A题通过AC,12:40:00提交B题错误WA,12:43:00提交B题错误TLE。一场比赛下来,DB就做了一个题,总罚时为(12:17:00-12:00:00+20*1)=00:37:00,B题没有通过,不算罚时。

输入

第一行输入DB需要你帮助计算的总罚时的比赛次数T(0<T<100)。对于每次需要计算的比赛,先输入比赛开始时间(格式HH:MM:SS),接下来输入总提交次数n(0<n<100),接下来n行输入每次提交信息题号id,提交时间time,评判结果result,其中id为字符A~K,time格式为HH:MM:SS,评判结果包括{AC,WA,TLE,RE,CE,PE}中的一种,只有AC是正确的,每项用空格隔开。所有时间按递增顺序输入。

注意:所有时间是24小时制,HH:MM:SS代表时:分:秒,不足两位的,前面补0。所有提交时间与比赛开始时间在同一天。评判结果只有AC代表通过。某些题目DB通过之后,可能会再次提交,但是不计罚时。

详见样例。

输出

对于每次比赛,输出一行,表示DB的总罚时(HH:MM:SS),不足两位,前面补0。保证总罚时的小时数不超过2位数。

样例输入

2
12:00:00
4
A 12:06:00 WA
A 12:17:00 AC
B 12:40:00 WA
B 12:43:00 TLE
12:00:00
2
A 12:50:00 AC
B 13:00:00 AC

样例输出

00:37:00
01:50:00 判断罚时和第一次AC时用的时间就可以了
#include <cstdio>
struct demo
{
int mm;
int hh;
int ss;
char name;
char ans[];
}ti[];
int main()
{
int n,t,h,m,s,f,timea,timeb,timei,i,j,flag;
char d,q[];
scanf("%d",&t);
while(t--)
{
for(scanf("%d:%d:%d %d",&h,&m,&s,&n),i=;i<n;i++)
{
getchar();
scanf("%c%*c%d%*c%d%*c%d",&ti[i].name,&ti[i].hh,&ti[i].mm,&ti[i].ss);
scanf("%s",ti[i].ans);
}
int timeb=h*+m*+s;
for(i=,timei=,timea=,flag=;i<n;i++)
{
if(ti[i].ans[]=='A')
{
d=ti[i].name;
for(j=;j<i;j++)
{
if(ti[j].name==d&&ti[j].ans[]=='A')
flag=;
}
if(flag)
{
flag=;
continue;
}
for(f=,j=;j<i;j++)
{
if(ti[j].name==d)
f++;
}
timei+=(f*);
timea+=(ti[i].hh*+ti[i].mm*+ti[i].ss-timeb);
}
}
timei*=;
timei+=timea;
printf("%02d:%02d:%02d\n",timei/,timei%/,timei%);
}
return ;
}

hnust 罚时计算器的更多相关文章

  1. 1005acm罚时

    ACM国际大学生程序设计竞赛是由国际计算机学会主办的,一项旨在展示大学生创新能力.团队精神和在压力下编写程序.分析和解决问题能力的年度竞赛.参赛队伍最多由三名参赛队员组成,竞赛中一般命题10-13题, ...

  2. hdu 4882 比赛罚时贪心

    http://acm.hdu.edu.cn/showproblem.php?pid=4882 就是CF的比赛,根据时间的推迟会相应的扣掉题目的分数,每个任务有e,k,e表示完成需要时间,k表示完成后消 ...

  3. Codeforces Round #384 (Div. 2) //复习状压... 罚时爆炸 BOOM _DONE

    不想欠题了..... 多打打CF才知道自己智商不足啊... A. Vladik and flights 给你一个01串  相同之间随便飞 没有费用 不同的飞需要费用为  abs i-j 真是题意杀啊, ...

  4. 结对实验报告-android计算器设计

     一:引言  目前手机可以说是普及率非常高的电子设备了,由于其便于携带,使用方便,资费适中等等原因,现在手机已经在一定程度开始代替固定电话的通话功能,以及一些原来电脑软件上的功能了.手机上的软件也随着 ...

  5. 信利SC123金融财务计算器评测——不错的HP 12C仿品

    最近X宝48包邮购入信利SC123金融计算器,只是为了玩一玩(没错你的好友盗版狂魔又上线了),因为这是目前市面上能买到的最便宜的金融计算器了,也是能买到的最便宜的RPN计算器,顺手出个评测.这个计算器 ...

  6. android计算器

    一:引言    目前手机可以说是普及率非常高的电子设备了,由于其便于携带,使用方便,资费适中等等原因,现在手机已经在一定程度开始代替固定电话的通话功能,以及一些原来电脑软件上的功能了.手机上的软件也随 ...

  7. SCNU ACM 2016新生赛初赛 解题报告

    新生初赛题目.解题思路.参考代码一览 1001. 无聊的日常 Problem Description 两位小朋友小A和小B无聊时玩了个游戏,在限定时间内说出一排数字,那边说出的数大就赢,你的工作是帮他 ...

  8. 2014 39th ACM-ICPC 北京赛区 总结

    万万没想到,拿金了. 在经历了西安赛区的打铁经历,感觉我们已经很坦然了.怎么说呢,虽说有阴影,但那也是成长的一步.我在西安打铁之后跟队友跟姐姐说过“如果北京是铜或者铁,我就退役”.记得曾经,很多人问我 ...

  9. HDU-SupportOrNot训练实录

    菜鸡队训练实录. 现场赛记录: 2016:[名称:奖项/排名] ZJPSC:Gold/1 CCPC中南邀请赛:Gold/1 ICPC Dalian:Gold/24 ICPC Beijing:Gold/ ...

随机推荐

  1. echarts学习笔记(部分angular及ant-design)

    1.在项目中修改ng-zorro组件默认样式的一些方法: 类名等 前加::ng-deep: 类名等 前加:root: 类名等 前加:host /deep/: 2.echarts横轴自定义时间粒度 两种 ...

  2. [NVIDIA编程教程]OpenACC: Directives for GPUs

    NVIDIA已经在过去五年里大力发展CUDA技术,我们估计CUDA开发人员超过15万,很多重要的科学应用正在CUDA的帮助下完成.但是我们仍然有一个很长的路要走,以帮助每个人从GPU计算中享受到好处. ...

  3. C# return语句

    一.C# return语句 return语句用于终止它出现在其中的方法的执行,并将控制返回给调用方法. 语法格式如下: return ...;return语句还可以返回一个可选值.如果方法为void类 ...

  4. C#面向对象的基本概念

    “面向对象=对象+类+继承+通信”.如果一个软件系统使用了这样四个概念进行设计和实现,我们就可以认为这个软件系统是面向对象的. 一.一切都是对象 1. 对象概述 对象可以表示几乎所有的实物和概念.比如 ...

  5. React后台管理系统-订单管理

    1.订单管理页面和商品管理页面类似,都是一个搜索组件+列表组件 2.搜索框search组件 import React from 'react';   class ListSearch extends ...

  6. HTML第三章:表单

    第三章:表单 表单标签form:<form></form>//相当于一张记录用户信息的单子    常用属性:method:表单的提交方式,常用的值有两个             ...

  7. SpringBoot学习6:springboot文件上传

    1.编写页面uploadFile.html <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  8. socket上传nsdictionary的json数据异常

    异常情况如下:按照正常的写法,将上传对数据封装在nsdictionary里,然后检验是否符合json格式化,调用系统的json序列化方法将nsdictionary转化为json数据然后上传, 异常结果 ...

  9. egg- 配置

    1. model module.exports = app => { const { INTEGER, STRING, TEXT } = app.Sequelize; const User = ...

  10. tcl之过程/函数-proc