17153.班级活动(java)

题目:

解题思路:

对于每个id

  • 如果少于2个,则需要其他人调整至与他相同;
  • 如果多余2个,则多余2个的部分需要调整,与少于2个的相同。
java 复制代码
import java.util.Scanner;
import java.util.Arrays;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);

        int one = 0, two = 0;
        int num = scan.nextInt();
        int[] arr = new int[num];
        Arrays.fill(arr, 0);
        
        for (int i = 0; i < num; i++) {
        	int id = scan.nextInt();
        	arr[id - 1]++;
        }
        
        for (int i = 0; i < num; i++) {
        	if(arr[i] > 2) two += arr[i] - 2;
          else if(arr[i] == 1) one++;
        }

        if(two >= one) {
          System.out.print(two);
        }
        else {
          System.out.print(two + (one - two)/2);
        }
        
        scan.close();
    }
}
相关推荐
忆锦紫几秒前
图像增强算法:Gamma映射算法及MATLAB实现
开发语言·算法·matlab
玄〤5 分钟前
黑马点评中 VoucherOrderServiceImpl 实现类中的一人一单实现解析(单机部署)
java·数据库·redis·笔记·后端·mybatis·springboot
t1987512811 分钟前
基于自适应Chirplet变换的雷达回波微多普勒特征提取
算法
guygg8819 分钟前
采用PSO算法优化PID参数,通过调用Simulink和PSO使得ITAE标准最小化
算法
老鼠只爱大米24 分钟前
LeetCode算法题详解 239:滑动窗口最大值
算法·leetcode·双端队列·滑动窗口·滑动窗口最大值·单调队列
J_liaty25 分钟前
Spring Boot拦截器与过滤器深度解析
java·spring boot·后端·interceptor·filter
mit6.8241 小时前
序列化|质数筛|tips|回文dp
算法
亲爱的非洲野猪1 小时前
Java锁机制八股文
java·开发语言
rgeshfgreh1 小时前
C++字符串处理:STL string终极指南
java·jvm·算法
LawrenceLan1 小时前
Flutter 零基础入门(十二):枚举(enum)与状态管理的第一步
开发语言·前端·flutter·dart