hdu 2014鞍山赛区 5073 Galaxy

简介:
题意:就是给你 n 个数,代表n个星球的位置,每一个星球的重量都为 1 !
开始的时候每一个星球都绕着质心转动,那么质心的位置就是所有的星球的位置之和 / 星球的个数
现在让你移动 k 个星球到任意位置(多个星球可以在同一个位置并且所有的星球在同一直线上) 
移动之后那么它们质心的位置就可能发生变化,求 I = sum(di^2) di (表示第i个星球到达质心的距离)最小! 

设d为n-k个星球的质心位置,如果I值最小,那么移动的k个星球一定都放在另外n-k个星球的质心上,
并且这n-k个星球一定是连续的!越密集方差越小嘛..... 
x1, x2, x3, x4,....x(n-k)表示余下n-k个星球的位置 
思路:I = sum(di^2) = (x1-d)^2 + (x2-d)^2 + (x3-d)^2 ....

= sum(xi^2) + (n-k)*d*d - 2*d*sum(xi);


#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define N 50050
using namespace std;
double num[N];
double s1[N], s2[N];
int main(){
    int n, t, k;
    scanf("%d", &t);
    while(t--){
        scanf("%d%d", &n, &k);
        for(int i=1; i<=n; ++i)
            scanf("%lf", &num[i]);
        sort(num+1, num+n+1);//对星球的位置排一下序 
        for(int i=1; i<=n; ++i)//分别计算前缀num[i] 的和 以及 num[i]^2的和 
            s1[i] = s1[i-1] + num[i], s2[i] = s2[i-1] + num[i]*num[i];
        int m = n-k;
        double ans = 1000000000000000000.0;//ans要足够大.... 最好不用long long,可能会超.... 
        for(int i=1; m && i+m-1<=n; ++i){
            int j = i+m-1;
            double d = (s1[j] - s1[i-1])/m;
            double tmp = s2[j] - s2[i-1] - 2*d*(s1[j] - s1[i-1]) + m*d*d;
            if(ans > tmp) ans = tmp;
        }
        if(n == k) ans = 0.0; 
        printf("%.9lf\n", ans);
    }
    return 0;
}


目录
相关文章
|
人工智能 弹性计算 边缘计算
2020年国内十大云计算商排名榜
云计算在中国经过数年发展后,技术和市场都越发成熟。随着性能和稳定的提高,成本的降低,个人和企业用户都开始逐步接受云服务,但无论在全球范围还是中国范围内,云计算市场还只是起步阶段。 中国云市场来看,表面看似巨头已经瓜分天下,但实际上,出色的新秀在不断涌现,利用自己的特色优势在细分市场中分一杯羹。笔者根据企业实力,产品性能、性价比、服务评价等方面选出了市场认可度高的中国十大公有云计算服务商云计算服务商。
|
缓存 Linux API
动态DMA映射使用通用设备 【ChatGPT】
动态DMA映射使用通用设备 【ChatGPT】
|
SQL 存储 Java
应用成本低出 N 倍的数据分析引擎 esProc SPL
我们介绍的 esProc SPL 是一个数据分析引擎,具备 4 个主要特点:低代码、高性能、轻量级、全功能。SPL 不仅写得简单,跑得也更快,既可以独立使用还能与应用集成嵌入,同时适用于多种应用场景。使用 esProc SPL 实现数据分析业务,整体应用成本将比以 SQL 为代表的传统技术低出几倍。
|
小程序 前端开发 测试技术
开发“校园帮”小程序:从构思到上线的完整指南
开发“校园帮”小程序:从构思到上线的完整指南
583 2
|
前端开发 测试技术 数据安全/隐私保护
图书馆信息管理系统(项目测试)
图书馆信息管理系统(项目测试)
422 2
|
存储 弹性计算 Serverless
什么是阿里云FPGA云服务器?FPGA云服务器产品优势及应用场景介绍
FPGA云服务器是阿里云提供的实例规格,融合现场可编程门阵列的低延迟硬件加速与弹性资源。FaaS平台简化了FPGA开发,提供统一硬件、开发环境和丰富的IP生态。特性包括硬件虚拟化、联合仿真和动态互联配置。产品计费与ECS一致,支持多种计费模式。优势在于分钟级交付、高性能加速、经济性价比和设计复用。应用广泛,如视频转码、人工智能、基因测序等。FPGA云服务器通过FPGA镜像、OSS服务等工具进行管理。
什么是阿里云FPGA云服务器?FPGA云服务器产品优势及应用场景介绍
|
前端开发 Java API
淘系接口推荐:淘宝图片搜索商品数据接口,轻松获取相似商品
淘系接口推荐:淘宝图片搜索商品数据接口,轻松获取相似商品
1214 6
|
监控 Shell API
shell监控脚本告警通过微信外发
shell监控脚本告警通过微信外发
354 1
|
存储 人工智能 安全
《芯片战争》读后感-得芯片者得天下
随着社会的进步和技术的发展,以互联网产业化、人工智能等为代表的第四次工业革命席转全球,人工智能技术如火如荼,将整个世界推入了智能化时代。有人说石油是现在工业的血液,那么芯片就是现代工业的大脑。芯片作为现代工业的大脑,它们被广泛应用于各种电子设备、通信、计算机、人工智能等领域。在现代电子设备中发挥着核心的作用。芯片可以控制和操作各种电子设备,执行复杂的运算和数据处理任务,实现各种智能化的功能。随着科技的进步和数字化转型的加速,芯片在各个领域的应用越来越广泛,从计算机、手机、汽车到航空航天、医疗、国防等各个领域,都离不开芯片的支持和推动,半导体芯片在现代技术和工业中的重要性无法被低估。
625 0
|
域名解析 缓存 负载均衡
CDN配置前置条件
CDN配置前置条件
297 1