华为OD机试统一考试D卷C卷 - MELON的难题
题目描述:MELON的难题(本题200分)
MELON有一堆精美的雨花石(数量为n,重量各异),准备送给S和W。MELON希望送给俩人的雨花石重量一致,请你设计一个程序,帮MELON确认是否能将雨花石平均分配。
输入描述
第1行输入为雨花石个数: n,0 < n < 31. 第2行输入为空格分割的各雨花石重量: m[0] m[1] ..... m[n - 1], 0 < m[k] < 1001
不需要考虑异常输入的情况。
输出描述
如果可以均分,从当前雨花石中最少拿出几块,可以使两堆的重量相等:如果不能均分,则输出-1。
用例1
输入
4
1 1 2 2
输出
2
说明
输入第一行代表共4颗雨花石,第二行代表4颗雨花石重量分别为1、1、2、2。均分时只能分别为1,2,需要拿出重量为1和2的两块雨花石,所以输出2。
Java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt(); // 输入雨花石个数
int[] stones = new int[n];
for (int i = 0; i < n; i++) {
stones[i] = scanner.nextInt(); // 输入雨花石重量
}
int totalWeight = 0;
for (int stone : stones) {
totalWeigh
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
机试E卷D卷刷题日记 文章被收录于专栏
机试刷题记录