HDU2078:复习时间
2013-05-27 18:38
302 查看
点击打开题目链接
看作:一开始便挑选了一门复习难度为100且复习效率为0的特殊课程S。
如果:将所选的m门课程与S按照复习难度降序排列为A0,A1,A2,......,Am(显然有A0=S)。
根据:(A0-A1)+(A1-A2)+......+(Am-1-Am)=(A0-Am)。
就有:(A0-A1)^2+(A1-A2)^2+......+(Am-1-Am)^2≤(A0-Am)^2。
也即:任选m门课程不会优于只选择这些课程中复习难度最小的那门。
再由:(A0-Am)^2≤(A0-Amin)^2(Amin为给出的n门课程中复习难度最小的那个)。
可知:只选择Amin复习即可取得最高复习效率。
复习时间Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3314 Accepted Submission(s): 2484 Problem Description 为了能过个好年,xhd开始复习了,于是每天晚上背着书往教室跑。xhd复习有个习惯,在复习完一门课后,他总是挑一门更简单的课进行复习,而他复习这门课的效率为两门课的难度差的平方,而复习第一门课的效率为100和这门课的难度差的平方。xhd这学期选了n门课,但是一晚上他最多只能复习m门课,请问他一晚上复习的最高效率值是多少? Input 输入数据的第一行是一个数据T,表示有T组数据。 每组数据的第一行是两个整数n(1 <= n <= 40),m(1 <= m <= n)。 接着有n行,每行有一个正整数a(1 <= a <= 100),表示这门课的难度值。 Output 对于每组输入数据,输出一个整数,表示最高效率值。 Sample Input 2 2 2 52 25 12 5 89 64 6 43 56 72 92 23 20 22 37 31 Sample Output 5625 8836 Author xhd Source ACM程序设计期末考试_热身赛(感谢 xhd & 8600) Recommend lcy |
=====================================[ 分析 ]=====================================
题意:复习第一门课的效率为100和这门课的难度差的平方。看作:一开始便挑选了一门复习难度为100且复习效率为0的特殊课程S。
如果:将所选的m门课程与S按照复习难度降序排列为A0,A1,A2,......,Am(显然有A0=S)。
根据:(A0-A1)+(A1-A2)+......+(Am-1-Am)=(A0-Am)。
就有:(A0-A1)^2+(A1-A2)^2+......+(Am-1-Am)^2≤(A0-Am)^2。
也即:任选m门课程不会优于只选择这些课程中复习难度最小的那门。
再由:(A0-Am)^2≤(A0-Amin)^2(Amin为给出的n门课程中复习难度最小的那个)。
可知:只选择Amin复习即可取得最高复习效率。
=====================================[ 代码 ]=====================================
#include <cstdio> #include <algorithm> using namespace std; int T, N, M; int main() { while( scanf( "%d", &T ) == 1 ) while( T-- ) { scanf( "%d%d", &N, &M ); int a, min_a = 100; while( N-- ) { scanf( "%d", &a ); min_a = min( a, min_a ); } int base = 100 - min_a; printf( "%d\n", base * base ); } return 0; }
相关文章推荐
- HDU2078 复习时间【水题】【数学】
- HDU2078 复习时间【水题】
- hdu2078复习时间(水题)
- HDU2078复习时间
- HDU2078复习时间
- HDU2078 复习时间
- hdu2078-复习时间
- R - 复习时间
- S-复习时间
- HDOJ HDU 2078 复习时间 ACM 2078 IN HDU
- 复习时间
- HDOJ 2078 复习时间
- *寒假水29——复习时间
- 微信公众号-5秒内不回复测试并处理方案,顺便复习php 时间执行
- hdu 2078 复习时间
- hdu 2078 复习时间
- 有时间可以看看复习一下oracle-总结(转)
- 期末复习这段时间,看看你在干嘛
- 每门课由平时成绩和考试成绩组成,满分为r。现在他知道每门课的平时成绩为ai ,若想让这门课的考试成绩多拿一分的话,小v要花bi 的时间复习,不复习的话当然就是0分。同时我们显然可以发现复习得再多也不会拿到超过满分的分数。为了拿到奖学金,小v至少要花多少时间复习。
- Java基础复习:日期与时间