【Codeforces Round 334 (Div 2)A】【模拟 水题】Uncowed Forces CF算分模拟
2015-12-02 19:14
417 查看
A. Uncowed Forces
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
Kevin Sun has just finished competing in Codeforces Round #334! The round was 120 minutes long and featured five problems with maximum point values of 500, 1000, 1500, 2000, and
2500, respectively. Despite the challenging tasks, Kevin was uncowed and bulldozed through all of them, distinguishing himself from the herd as the best cowmputer scientist in all of Bovinia. Kevin knows his submission time for each problem, the number of
wrong submissions that he made on each problem, and his total numbers of successful and unsuccessful hacks. Because Codeforces scoring is complicated, Kevin wants you to write a program to compute his final score.
Codeforces scores are computed as follows: If the maximum point value of a problem is x,
and Kevin submitted correctly at minute mbut made w wrong
submissions, then his score on that problem is
.
His total score is equal to the sum of his scores for each problem. In addition, Kevin's total score gets increased by 100 points
for each successful hack, but gets decreased by 50 points for each unsuccessful hack.
All arithmetic operations are performed with absolute precision and no rounding. It is guaranteed that Kevin's final score is an integer.
Input
The first line of the input contains five space-separated integers m1, m2, m3, m4, m5,
where mi (0 ≤ mi ≤ 119)
is the time of Kevin's last submission for problem i. His last submission is always correct
and gets accepted.
The second line contains five space-separated integers w1, w2, w3, w4, w5,
where wi (0 ≤ wi ≤ 10)
is Kevin's number of wrong submissions on problem i.
The last line contains two space-separated integers hs and hu (0 ≤ hs, hu ≤ 20),
denoting the Kevin's numbers of successful and unsuccessful hacks, respectively.
Output
Print a single integer, the value of Kevin's final score.
Sample test(s)
input
output
input
output
Note
In the second sample, Kevin takes 119 minutes
on all of the problems. Therefore, he gets
of
the points on each problem. So his score from solving problems is
.
Adding in 10·100 = 1000points from hacks, his total score becomes 3930 + 1000 = 4930.
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
Kevin Sun has just finished competing in Codeforces Round #334! The round was 120 minutes long and featured five problems with maximum point values of 500, 1000, 1500, 2000, and
2500, respectively. Despite the challenging tasks, Kevin was uncowed and bulldozed through all of them, distinguishing himself from the herd as the best cowmputer scientist in all of Bovinia. Kevin knows his submission time for each problem, the number of
wrong submissions that he made on each problem, and his total numbers of successful and unsuccessful hacks. Because Codeforces scoring is complicated, Kevin wants you to write a program to compute his final score.
Codeforces scores are computed as follows: If the maximum point value of a problem is x,
and Kevin submitted correctly at minute mbut made w wrong
submissions, then his score on that problem is
.
His total score is equal to the sum of his scores for each problem. In addition, Kevin's total score gets increased by 100 points
for each successful hack, but gets decreased by 50 points for each unsuccessful hack.
All arithmetic operations are performed with absolute precision and no rounding. It is guaranteed that Kevin's final score is an integer.
Input
The first line of the input contains five space-separated integers m1, m2, m3, m4, m5,
where mi (0 ≤ mi ≤ 119)
is the time of Kevin's last submission for problem i. His last submission is always correct
and gets accepted.
The second line contains five space-separated integers w1, w2, w3, w4, w5,
where wi (0 ≤ wi ≤ 10)
is Kevin's number of wrong submissions on problem i.
The last line contains two space-separated integers hs and hu (0 ≤ hs, hu ≤ 20),
denoting the Kevin's numbers of successful and unsuccessful hacks, respectively.
Output
Print a single integer, the value of Kevin's final score.
Sample test(s)
input
20 40 60 80 100 0 1 2 3 4 1 0
output
4900
input
119 119 119 119 119 0 0 0 0 0 10 0
output
4930
Note
In the second sample, Kevin takes 119 minutes
on all of the problems. Therefore, he gets
of
the points on each problem. So his score from solving problems is
.
Adding in 10·100 = 1000points from hacks, his total score becomes 3930 + 1000 = 4930.
#include<stdio.h> #include<iostream> #include<string.h> #include<string> #include<ctype.h> #include<math.h> #include<set> #include<map> #include<vector> #include<queue> #include<bitset> #include<algorithm> #include<time.h> using namespace std; void fre(){freopen("c://test//input.in","r",stdin);freopen("c://test//output.out","w",stdout);} #define MS(x,y) memset(x,y,sizeof(x)) #define MC(x,y) memcpy(x,y,sizeof(x)) #define MP(x,y) make_pair(x,y) #define ls o<<1 #define rs o<<1|1 typedef long long LL; typedef unsigned long long UL; typedef unsigned int UI; template <class T1,class T2>inline void gmax(T1 &a,T2 b){if(b>a)a=b;} template <class T1,class T2>inline void gmin(T1 &a,T2 b){if(b<a)a=b;} const int N=0,M=0,Z=1e9+7,ms63=1061109567; int V(int m,int bas,int w) { return max(bas*3/10,bas-bas/250*m-50*w); } int m[7],w[7],h; int main() { int ans=0; for(int i=1;i<=5;++i)scanf("%d",&m[i]); for(int i=1;i<=5;++i)scanf("%d",&w[i]); for(int i=1;i<=5;++i)ans+=V(m[i],i*500,w[i]); scanf("%d",&h);ans+=h*100; scanf("%d",&h);ans-=h*50; printf("%d\n",ans); return 0; } /* 【trick&&吐槽】 这题我心想着—— 噢,水题。 噢,简单模拟。 于是匆匆写完就交,然后也收获了一发wa。 原因就是我TwT—— 我为了节省变量,把所有wa的-50分放到后来才算。 然而,这个是要在计算分值的时候才生效,这个-50分并不一定会必然减。 TwT 花样作死! 【题意】 CF算分。 分值分别为500 1000 1500 2000 2500 每道题的得分公式是max(0.3x,(1-m/250)x-50w) hack成功+100,失败-50 【类型】 模拟 水题 【分析】 不改变算分规则的情况下,模拟一发即可。 */
相关文章推荐
- Transformation 能将 Windows XP/Server 2003 操作系统,完美地模拟成 Windows Vista 的软件
- 用javascript和css模拟select的脚本
- PHP模拟asp.net的StringBuilder类实现方法
- javascript用层模拟可移动的小窗口
- 自编jQuery插件实现模拟alert和confirm
- PHP模拟asp中response类实现方法
- 模拟Spring的简单实现
- javascript 模拟点击广告
- JQuery中模拟image的ajaxPrefilter与ajaxTransport处理
- php实现模拟post请求用法实例
- JavaScript实现MIPS乘法模拟的方法
- 模拟xcopy的函数
- JS模拟实现Select效果代码
- php模拟服务器实现autoindex效果的方法
- C# SendInput 模拟鼠标操作的实现方法
- PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
- js实现模拟银行卡账号输入显示效果
- JS模拟并美化的表单控件完整实例
- php模拟登陆的实现方法分析
- php模拟用户自动在qq空间发表文章的方法