0616 Atcoder ABC 332 - 福袋 | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

0616

Atcoder ABC 332 - 福袋

Easy 时间限制 1000 ms 内存限制 262144 KB
动态规划 Atcoder

题目详情

返回题库

题目描述

AtCoder 公司在其在线商店上销售商品。

公司还剩下N件商品。第i件商品第(1≤i≤N)件的重量为Wi​。

高桥将把这些商品作为D个福袋出售。
他希望尽量减小福41.png袋中物品总重量的方差。
这里,方差定义为,其中x1​,x2​,…,xD​是幸运袋中物品的总重量,而xˉ=(x1​+x2​+⋯+xD​)/D是x1​,x2​,…,xD​的平均值。

求福袋中物品的总重量的方差。
可以接受福袋是空的(在这种情况下,幸运袋中物品的总重量定义为0)、 但每个物品必须恰好装在D个福袋中的一个

输入描述

第一行N和D

第二行N个数:W1,W2.....WN

数据范围:

  • 2≤D≤N≤15
  • 1≤Wi​≤10^8

输出描述

打印福袋中物品的总重量方差。

保留到小数点后10位小数

测试样例

样例支持多行内容展示
样例1
输入
5 3
3 5 3 6 3
输出
0.8888888889

如果将第一件和第三件物品放入第一个福袋,第二件和第五件物品放入第二个福袋,第四件物品放入第三个福袋,那么袋中物品的总重量分别为6、8和6。那么,平均重量为(6+8+6)/3=20/3, 方差为0.888888…,即最小值。
请注意,多个物品的重量可能相同,而且每个物品都必须装在其中一个福袋中。
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。