鞍山邀请赛 部分题
来源:互联网 发布:转运公司推荐 知乎 编辑:程序博客网 时间:2024/04/29 01:18
http://acm.hdu.edu.cn/showproblem.php?pid=5073
题意:给你n个行星,移动k个行星,绕他们的质心速度变得更大,使得这些行星的速度变得更大,那么就要使得
I的值更小即可,
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;double zb[70100];double sum[70005];double s[70005];int main(){ int t,n,m; scanf("%d",&t); while(t--){ scanf("%d%d",&n,&m); for(int i = 1;i <= n;i++) scanf("%lf",&s[i]); if(m >= n - 1) {printf("0\n");continue;} sort(s+1,s+n+1); zb[0] = 0;sum[0] = 0; for(int i = 1;i <= n;i++){ zb[i] = zb[i-1] + s[i];//预处理前n项和; sum[i] = sum[i-1] + s[i]*s[i];//预处理前n项平方和; } double zx1 = zb[n]/(n-m); double _min = sum[n] + (n-m) * zx1 * zx1 - 2 * zx1 * zb[n];//注意不移动的时候他的I值 for(int i = n-m;i <= n ;i++)//苦逼的边界无限的WA { double tmp = zb[i] - zb[i-n+m]; double r = tmp/(n-m); double k = sum[i] - sum[i-n+m]; double ret = k + (n-m) * r * r - 2 * r * tmp; _min = min(ret,_min); } printf("%.10lf\n",_min); } return 0;}
0 0
- 鞍山邀请赛 部分题
- 鞍山赛区D题
- 2014鞍山现场赛部分题解。
- 2014北京邀请赛(部分题解)
- 2014西安邀请赛部分题解
- 2013通化邀请赛部分题解
- 2014西安邀请赛部分题解
- 鞍山的dp题 hdu5074
- Partial Sum(湘潭邀请赛E题(部分和问题))
- hdu5001 鞍山赛区网络赛 E题
- hdu5000 Clone 鞍山网络赛D题
- 2014 鞍山 现场赛 E题题解
- 长沙邀请赛 H题
- 陕西邀请赛B题
- 2013 ACM-ICPC吉林通化全国邀请赛部分题解
- poj4049 chess金华邀请赛题
- 2012湖南邀请赛A题
- 青理工邀请赛第一题
- MySQL数据库的优化(上)单机MySQL数据库的优化
- IOS数据持久化之Core Data(二) - 单表操作
- div中图片和文字在同一位置
- VMware虚拟机搭建linux操作系统
- Lua example
- 鞍山邀请赛 部分题
- MySQL数据库的优化(下)MySQL数据库的高可用架构方案
- 1229 还是A+B
- 创建用户自定义的信号与槽的具体步骤
- Flash AS 3.0垃圾回收
- flash-linux编译环境
- Alibaba 支付宝测试平台解读
- Ffmpeg 1.0 Filter format流程分析
- GoldenGate的安装与配置(二)oracle——oracle双向复制(DML)