当前位置: 首页 > news >正文

第十四届蓝桥杯真题Java c组D.平均(持续更新)

  • 博客主页:音符犹如代码
  • 系列专栏:蓝桥杯
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

【问题描述】
        有一个长度为n的数组(n是10的倍数),每个数 Ai 都是区间[0,9]中的整数,小明发现数组里每种数出现的次数不太平均,而更改第 i 个数的代价为bi,他想更改着若干个数的值使得这 10 种数出现的次数相等(都等于n/10,请问代价和最少为多少。

【输入格式】
        输入的第一行包含一个正整数 n。
        接下来n行,第i行包含两个整数ai,bi,用一个空格分隔。

【输出格式】
        输出一行包含一个正整数表示答案。

【样例输入】
10
1 1
1 2
1 3
2 4
2 5
2 6
3 7
3 8
3 9
4 10

【样例输出】
        27

【样例说明】
        只更改第 1,2,4,5.7,8 个数,需要花费代价 1+2+4+5+7+8=27。

【评测用例规模与约定】
        对于20%的评测用例,n<=1000;
        对于所有评测用例n <= 100000,0<bi<=2×10^5。

import java.util.*;  public class Main {  public static void main(String[] args) {  // 创建Scanner对象以读取输入  Scanner sc = new Scanner(System.in);  // 读取第一个整数n,表示后续将有n个整数对  int n = sc.nextInt();  // 计算k值,每个分类需要忽略的最大数值数量(取整)  int k = n / 10;  // 创建一个HashMap,键为分类标签(0-9),值为该分类下的数值列表  HashMap<Integer, ArrayList<Integer>> hm = new HashMap<>();  // 初始化HashMap,为每个分类标签创建一个空的ArrayList  for (int i = 0; i < 10; i++) {  hm.put(i, new ArrayList<>());  }  // 读取n个整数对,并将数值添加到对应分类的列表中  for (int i = 0; i < n; i++) {  int label = sc.nextInt(); // 分类标签  int value = sc.nextInt(); // 数值  hm.get(label).add(value); // 将数值添加到对应分类的列表中  }  // 初始化结果变量  int ans = 0;  // 遍历每个分类,并处理其数值列表  for (int i = 0; i < 10; i++) {  // 获取当前分类的数值列表  ArrayList<Integer> values = hm.get(i);  // 对数值列表进行排序  Collections.sort(values);  // 计算需要累加的数值数量(列表大小减去k)  int m = values.size() - k;  // 累加最小的m个数值到结果变量中  for (int j = 0; j < m; j++) {  ans += values.get(j);  }  }  // 输出结果  System.out.println(ans);  // 关闭Scanner  sc.close();  }  
}


http://www.mrgr.cn/news/38522.html

相关文章:

  • SpringCloud入门(九)Feign实战应用和性能优化
  • OpenCV透视变换:原理、应用与实现
  • Makefile编程:4种赋值差异
  • MySQL基础--表的增删改查
  • 算法复杂度-空间
  • 找不到msvcp110.dll怎么办,总结6种解决msvcp110.dll的方法
  • 大数据毕业设计选题推荐-食品销售数据分析系统-Hive-Hadoop-Spark
  • css 数字比汉字要靠上
  • 【刷点笔试面试题试试水】 i++与++i哪个效率更高?
  • webpack 和 vite 区别
  • Accelerate单卡,多卡config文件配置
  • 对小白友好的与易我同级别四款剪辑工具推荐:
  • Xshell连接服务器
  • Spring Boot 整合 Keycloak
  • 花都狮岭寄宿自闭症学校:开启孩子的生命之门
  • 使用python获取百度一下,热搜TOP数据详情
  • 芝士AI写作有什么特色? 大模型支撑,智能改写续写,让写作更轻松
  • RHCS认证-Linux(RHel9)-Ansible
  • Python自学查漏9.28
  • [论文阅读] ChartInstruct: Instruction Tuning for Chart Comprehension and Reasoning