首页 > 试题广场 >

牛牛的分配

[编程题]牛牛的分配
  • 热度指数:379 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
长度为n的数组,每次可以选择若干元素使元素的值变为这些元素的和的平均值
给出数组和数字x,求经过操作数组中最多有多少数字不小于x



示例1

输入

3,7,[9,4,9]

输出

3

说明

一开始有3个数字,分别为9,4,9,x为7,操作这3个数字后每个数字都不小于x 
示例2

输入

2,5,[4,3]

输出

0

说明

一共2个数字,无论怎么操作都不会大于等于x 

备注:



头像 td1336065617
发表于 2020-08-01 23:19:39
我看了一下 一开始想拿多余填补少的 但是感觉可能出问题(怕wa)就排序了一下 然后从后往前累加算平均数(符合题意的模拟) class Solution { public: /** * 返回重新分配后,满足牛牛要求的水量的瓶子最多的数量 * @param n int整型 瓶 展开全文
头像 东溪看水
发表于 2020-08-06 18:20:45
题目 给定 n 个瓶子以及 n 个瓶子中的含水量,牛牛要求瓶子中的水最少为 x,所以他打算对这些瓶子里的水进行重新分配。牛牛的分配规则是:每次可以选择多个瓶子,将里面的水平均分配到已选择的瓶子中。求最多可以有多少个瓶子满足牛牛的要求? 解题思路 按瓶子中的含水量从大到小对瓶子序列 进行排序。从头到 展开全文
头像 abcdhhhh
发表于 2021-09-18 21:41:28
题意 长度为 的数组,每次可以选择若干元素使元素的值变为这些元素的和的平均值给出数组和数字 ,求经过操作数组中最多有多少数字不小于 解法1:暴力 如果有一堆元素不小于 ,那它们的平均值一定不小于 。可以枚举所有子集,分别计算平均值。 代码 class Solution { public: 展开全文
头像 skyyi
发表于 2020-08-17 00:07:04
import java.util.Scanner; public class CountSum { public static void main(String[] args) { Scanner sc = new Scanner(System.in); i 展开全文
头像 xqxls
发表于 2021-09-09 14:15:00
题意整理 给定长度为n的数组,将数字大的分配给数字小的,使得尽可能多的数不小于给定数字x。 求最多有多少个数不小于x。 方法一(排序+模拟) 1.解题思路 首先初始化结果变量和分配之后多余的数。 将给定数组排序,逆序遍历,保证每次访问的都是当前最大的,如果大于等于x,说明能分配,则计数加一,并 展开全文
头像 SandMonth
发表于 2021-10-12 23:36:44
牛牛的分配 长度为nnn的数组,每次可以选这若干元素使元素的值变味这些元素的和的平均值,给出数组的数字xxx,求经过操作数组中最多有多少个数字不小于xxx 案例: 输入: 3,7,[9,4,9] 输出: 3 一开始有3个数字,分别为9,4,9,x为7操作这3个数字后每个数字都不小于x 方法一 展开全文
头像 蘑菇睡不着
发表于 2021-09-12 15:23:17
描述 长度为n的数组,每次可以选择若干元素使元素的值变为这些元素的和的平均值给出数组和数字x,求经过操作数组中最多有多少数字不小于x 示例1 输入: 3,7,[9,4,9] 返回值: 3 说明: 一开始有3个数字,分别为9,4,9,x为7,操作这3个数字后每个数字都不小于x示例2 输入: 2 展开全文