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

这题很巧妙,如果说要用贪心算法的话,估计没个100行也得80行,但是要是用数学公示的话,主要的代码也就几行,所用公式是(100-a)^2+(a-b)^2<(100-b)^2;

展开后左侧是10000-200*a-2*a*b+2*a*a*2+2*b*b右侧是10000-200*b+b*b.右侧-左侧=200a+2*a*b-2*a*a-200*b=a*(200-2*a)-b*(200-2*a)==(200-2*a)*(a-b)>0;如果还是嫌麻烦的话可以这样想 100-a + a-b ==100-b 就是 A^2+B^2<(A+B)^2;所以本题最大效率值就是(100-最小的难度)^2;本题告诉我们,考试前最后一晚,一定要复习最简单的.

#include<stdio.h>
#include<algorithm>
using namespace std;
int a[1000];
int i,n,j,k,m;
int main()
{scanf("%d",&k);while(k--){scanf("%d%d",&n,&m);j=100; for(i=0;i<n;i++){scanf("%d",&a[i]);if(j>a[i]) j=a[i];}j=100-j;printf("%d\n",j*j);}return 0;
}

杭电2078复习时间相关推荐

  1. hdu 2078 复习时间

    复习时间 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  2. HDU杭电OJ经典100题2000-2099_Java版详细题解(持续更新)

    今年寒假打算用Java把杭电2000-2099全部AC(现在持续更新),如下是题目链接,之后是我的题解,全部做完后我会把所有AC的题解打包上传的 题号 题名 题号 题名 2000 ASCII码排序 2 ...

  3. 杭电OJ第11页2075~2079算法题(C语言)

    目录 2075.A|B? 2076.夹角有多大 2077.汉诺塔IV 2078.复习时间 2079.选课时间 2075.A|B? Problem Description 正整数A是否能被正整数B整除, ...

  4. 杭电2391--Filthy Rich(DP)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2391 题目意思:在一个n*m的矩阵中,不同的位置有不同重量的黄金,从矩阵的左上角开始,到右下角,只能向 ...

  5. 工作一年,辞职复习半年,考杭电计算机的经验分享

    工作一年,辞职复习半年,考杭电计算机的经验分享 如果,毕业了工作顺利的人大概率是不会去考研的,去考研的人,大概率是想改变的.----题记 - 2019/4/6 关于我 纠结的人生 为什么考研 如题所示 ...

  6. hdoj杭电问题分类

    杭电上的题虽然多,但是一直苦于找不到问题分类,网页都是英文的,所以平时做题也没怎么看,今天仔细一看,问题分类竟然就在主页....做了那么久的题居然没发现,表示已经狗带..不要笑,不知道有没有像我一样傻 ...

  7. 杭电ACM刷题(1):1002,A + B Problem II

    最近忙于考试复习,没有多少可供自己安排的时间,所以我利用复习之余的空闲时间去刷刷杭电acm的题目,也当对自己编程能力的锻炼吧. Problem Description I have a very si ...

  8. c++ substr截取中间部分字符串_杭电OJ 字符串处理类部分题解

    一.前言 不知不觉已经大三上学期了,可作为一个计算机狗还没有考过CCF-CSP.因平时学习内容主要与安全方面相关,对于此类算法类的考核并没有太多的准备,故打算开始刷题复习算法和数据结构,准备CCF认证 ...

  9. c++怎么输入带有空格的字符串_杭电OJ 字符串处理类部分题解

    一.前言 不知不觉已经大三上学期了,可作为一个计算机狗还没有考过CCF-CSP.因平时学习内容主要与安全方面相关,对于此类算法类的考核并没有太多的准备,故打算开始刷题复习算法和数据结构,准备CCF认证 ...

最新文章

  1. 程序员被质疑跳槽频繁不稳定,随后的一番话令HR哑口无言!
  2. 离职 10 天,仅面了 4 家公司,我的感受。。。
  3. C++ Primer 5th笔记(10)chapter10 泛型算法 :谓词
  4. java 字节 字符,java:字节和字符
  5. python只能使用内置数据库_隐藏彩蛋:你知道python有一个内置的数据库吗?
  6. linux文件名中文乱码解决
  7. Java如何查看死锁?
  8. D3D中的粒子系统(1)
  9. Android开发之WebView加载自定义scheme报错net::ERR_UNKNOWN_URL_SCHEME(附带源码标题下面可点击下载)
  10. JavaOne 2012:101种改进Java的方法-开发人员参与为何如此重要
  11. 用awk一些常用技巧sort uniq
  12. 9月16日见!vivo高管亲曝NEX 3 5G:99.6%屏占比确认
  13. ant vue 树形菜单横向显示_丝滑般 Vue 拖拽排序树形表格组件Vue-DragTreeTable
  14. 数组中每个元素都出现了两次,但是其中一个元素只出现了一次,求出此元素
  15. Web页面iOS真机调试-win10
  16. 二、11【FPGA】时序逻辑电路——计数器
  17. 如何横扫棋坛?AlphaGo 先随机扔了一个骰子
  18. 测试工程师需要具备的能力
  19. 世界名模刘金金称赞续元金方是国宝,表示:振兴国医,义不容辞
  20. 《仿真使用ARENA软件》

热门文章

  1. Qt多线程间信号槽传递非QObject类型对象的参数
  2. Qt网络获取本机网络信息
  3. 携程实时计算平台架构与实践丨DataPipeline
  4. 【知识梳理】3.1页面布局
  5. Oracle 10g 完全卸载(windows平台和linux平台)
  6. -Java基础-方法
  7. 常见浏览器的兼容问题
  8. 借助共享缓存redis实现分布式锁
  9. 读后有感 - UI设计师必知:线框图、原型和视觉稿
  10. 视图中获取控制器中数据的方式