使用java完成编译在一个main方法中完成举个例子小美有6颗彩虹糖颜色分别是【114514】。小美第一天吃颜色为1和4的彩虹糖小美会很高兴;小美第二天吃颜色为4和1的彩虹糖小美不会很高兴;小美第三天吃颜色为1和5的彩虹糖小美会很高兴;此时小美共有2天很高兴。小美想知道她最多会有几天很高兴。输入描述:第一行输入一个整数n表示彩虹糖数量第二行输入n个整数表示彩虹糖颜色输出描述:输出一个整数表示答案
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] colors = new int[n];
for (int i = 0; i < n; i++) {
colors[i] = scanner.nextInt();
}
Map<Integer, Integer> countMap = new HashMap<>();
int maxHappyDays = 0;
for (int i = 0; i < n; i++) {
countMap.put(colors[i], countMap.getOrDefault(colors[i], 0) + 1);
int count1 = countMap.getOrDefault(1, 0);
int count4 = countMap.getOrDefault(4, 0);
int count5 = countMap.getOrDefault(5, 0);
if (count1 >= 2 && count4 >= 2) {
maxHappyDays = Math.max(maxHappyDays, Math.min(count1, count4) / 2);
}
if (count1 >= 1 && count4 >= 1 && count5 >= 1) {
maxHappyDays = Math.max(maxHappyDays, Math.min(count1, Math.min(count4, count5)));
}
}
System.out.println(maxHappyDays);
}
}
``
原文地址: http://www.cveoy.top/t/topic/iWfw 著作权归作者所有。请勿转载和采集!