计软对抗赛之 爱上CF
来源:互联网 发布:福师大网络与继续教育 编辑:程序博客网 时间:2024/04/29 04:13
爱上CF
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
CF,codeforces不是Crossfire。身为一个Acmer,RE大神与Soaring大神最喜欢做每五天一次的CF,从11:30到1:30,然后和逗比学长们一起等着跑数据等到两点半,然后再一起嘲笑一坨学长和柴爷,实在是人生一大快事。
但是Triple_S队的另一员——Winddreams,竟然还不会算CF的单局积分。实在是略萌啊。身为队长的RE大神只能把CF的详细规则再给Winddreams讲一遍了。
CF中共A,B,C,D,E五道题,其初始分分别为500,1000,1500,2000,2500。
比赛共两个小时,每过一分钟每道题目的分数分别下降2,4,8,16,32分。例如你在00:08的时候提交A题,就会获得484分。
比赛中对于不成功的提交(统称为WA)将扣掉该题50分;每道题的分数是单独的,如果没有AC不管这道题WA几次,不会扣总分。而且每道题的最低得分为150分,当分数降低至150分时,不在进行分数削减。
比赛中还有一种叫做HACK的玩法,就是在锁定自己的题目代码后,你可以查看他人的代码,如果别人的代码有漏洞你可以出一组测试数据证明他是错的,如果你成功了(Successful Hack)你讲获得100分,如果你失败了(Unsuccessful Hack)你将被扣50分。同理,你也可以被Hack如果你被Hack成功了(Hack)将视为该题WA。
由于最近RE大神和Soaring要忙一下补觉的问题,所以,需要你来为Winddreams写一个程序来计算得分情况。
输入
多组输入。输入一个T(T<=50)表示有T个操作,在接下来的T行里,每行输入三个个变量(中间用空格隔开),分别是时间t(XX:XX),题目No(A,B,C,D,E)以及题目返回结果E(WA ,AC,Hack,Successful Hack,Unsuccessful Hack)。
输出
最终得分。
示例输入
1900:03 A AC00:10 B WA00:12 B WA00:13 B AC00:30 C WA00:40 B Hack00:45 B WA00:45 B WA00:46 B WA00:47 B WA00:48 B WA00:48 B WA00:50 B WA00:54 B WA00:55 B WA00:57 B WA00:59 B AC01:10 A Successful Hack01:49 B Unsuccessful Hack
示例输出
694
这道题HACK 算WA一次 然后在重新记分 比赛是没理解好这一条,就没AC 最后就是要注意输入了。。 下为AC代码
#include <iostream>#include <stdio.h>#include <stdlib.h>#include <string.h>using namespace std;int main(){ int n; while(~scanf("%d",&n)) { int sum=0; char aa[50]; char f; int t3; int ta=0,tb=0,tc=0,td=0,te=0; int sa=0,sb=0,sc=0,sd=0,se=0; int q1=0,q2=0; int a=500,b=1000,c=1500,d=2000,e=2500; while(n--) { scanf("%d:%d %c%*c",&q1,&q2,&f); gets(aa); if(strcmp(aa,"AC")==0) { t3=q1*60+q2; if(f=='A') { a=a-2*t3-50*ta; if(a<150) a=150; sa=1; } else if(f=='B') { b=b-4*t3-50*tb; if(b<150) b=150; sb=1; } else if(f=='C') { c=c-8*t3-50*tc; if(c<150) c=150; sc=1; } else if(f=='D') { d=d-16*t3-50*td; if(d<150) d=150; sd=1; } else if(f=='E') { e=e-32*t3-50*te; if(e<150) e=150; se=1; } } else if(strcmp(aa,"WA")==0) { if(f=='A') ta++; else if(f=='B') tb++; else if(f=='C') tc++; else if(f=='D') td++; else if(f=='E') te++; } else if(strcmp(aa,"Hack")==0) { if(f=='A') { ta++; a=500; sa=0; } else if(f=='B') { tb++; b=1000; sb=0; } else if(f=='C') { tc++; c=1500; sc=0; } else if(f=='D') { td++; d=2000; sd=0; } else if(f=='E') { te++; e=1000; se=0; } } else if(strcmp(aa,"Successful Hack")==0) { if(f=='A') a+=100; else if(f=='B') b+=100; else if(f=='C') c+=100; else if(f=='D') d+=100; else if(f=='E') e+=100; } else if(strcmp(aa,"Unsuccessful Hack")==0) { if(f=='A') { if(a<150) a=150; a-=50; } else if(f=='B') { if(b<150) b=150; b-=50; } else if(f=='C') { c-=50; if(c<150) c=150; } else if(f=='D') { d-=50; if(d<150) d=150; } else if(f=='E') { e-=50; if(e<150) e=150; } } } if(sa) sum+=a; if(sb) sum+=b; if(sc) sum+=c; if(sd) sum+=d; if(se) sum+=e; printf("%d\n",sum); } return 0;}
0 0
- 计软对抗赛之 爱上CF
- 计软对抗赛之玲珑龟
- 计软对抗赛之 Easy的题
- 2014软件计科对抗赛之玲珑龟
- 爱上CF
- 爱上CF
- 爱上CF
- 2014计科 - 软件对抗赛 -- 玲珑龟
- SDUT2889_爱上CF(模拟)
- 对抗赛
- 对抗赛
- 对抗赛
- 计科软件对抗赛。。。说多了都是泪
- CTF--信息技术对抗赛ISCC之安卓逆向分析
- CF 833A(Automatic Door-计算题)
- 【9923】对抗赛
- css布局之爱上flex
- 《爱上android》之初识Android
- 6.10 某大陆 研究院 面试
- oc学习之NSArray与NSMutableArray数组
- Maven隐式变量
- hdu-4419-Colourful Rectangle-线段树求面积并
- 深拷贝 浅拷贝
- 计软对抗赛之 爱上CF
- lua笔记1:类继承
- 第1次实验——NPC问题(回溯算法、聚类分析)
- 前端基础一
- CRT堆
- Android Service 的添加流程
- OLTP与OLAP有什么区别
- Intent的FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- 黑马程序员——异常