计算最优分配平均次数

本文介绍了如何在公司游戏中,通过主持人将乒乓球从一个员工转移到另一个员工,使得最终所有员工手中的乒乓球数量相同。该问题涉及寻找最优解,即最少的移动次数。样例输入为4个员工的不同初始球数,输出为实现平均分配所需的最小移动次数。
摘要由CSDN通过智能技术生成

计算最优平均次数。

公司组织了一次游戏,有M个员工参加,给每个员工分配N个乒乓球,支持人每次从一个人取两个乒乓球给另外一个员工,要求最后所有员工手里面的个数相同。…

输入描述:
第一行:输入总人数,1<M<50
第二行:输入分配的个数N,N>0

输出描述:
输出最优方案的移动次数,若不存在输出ERROR

样例输入:
4
6 14 8 4
样例输出:
3

import java.util.Scanner;

public class 平均分配移动次数计数 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int person = Integer.valueOf(scanner.nextLine());//人数
        String str2 = scanner.nextLine();//球的个数
        int[] ballArr = strToIntArray(str2, " ");//球的个数数组
        check(person,ballArr);
    }

    /**
     * 获取控制到输入
     */
    private static String getTerminal() {
        Scanner scanner = new Scanner(System.in);
        return scanner.nextLine();
    }

    /**
     * 获取控制到输入,转Int数组
     */
    private static int[] strToIntArray(String str,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值