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

2025年华为OD上机考试真题(Java)——整数对最小和

在这里插入图片描述
在这里插入图片描述

题目
给定两个整数数组array1、array2,数组元素按升序排列。假设从array1、array2中分别取出一个元素可构成一对元素,现在需要取出k对元素,并对取出的所有元素求和,计算和的最小值。
注意:两对元素如果对应于array1、array2中的两个下标均相同,则视为同一对元素。

输入描述
输入两行数组array1、array2,每行首个数字为数组大小size(0 < size <= 100);
0 < array1[i] <= 1000
0 < array2[i] <= 1000
接下来一行为正整数k
0 < k <= array1.size() * array2.size()

输出描述
满足要求的最小和

示例1
输入:

3 1 1 2
3 1 2 3
2

输出:

4

Java源代码实现如下:

// 复制到上机考试时,去掉下面这行代码
package vip.buddha.demo;import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;public class Main {public static void main(String[] args) {// 获取终端输入Scanner scanner = new Scanner(System.in);String[] array1 = scanner.nextLine().split(" ");String[] array2 = scanner.nextLine().split(" ");int k = scanner.nextInt();// array1 和 array2 各取出1元素给求和放到数组ArrayList<Integer> list = new ArrayList<>();for (int i = 0; i < array1.length; i++) {for (int j = 0; j < array2.length; j++) {list.add(Integer.parseInt(array1[i]) + Integer.parseInt(array2[j]));}}// 排序Collections.sort(list);// 获取k对求和int sum = 0;for (int i = 0; i < k; i++) {sum += list.get(i);}System.out.println(sum);}
}
说明:
给出的示例中,array1取出1元素,array2取出1元素,共需要取出2对元素
取array1数组第1个元素与array2数组第1个元素组成1对元素[1,1];
取array1数组第2个元素与array2数组第1个元素组成1对元素[1,1];
上面两种组合求和值最小:1+1=2,1+1=2,2+2=4。

解题思路:
数值最小2对(每对已经求和了),list数组从小到大排序,所以肯定是前两个元素求和是最小了。

机试,采用测试用例检验代码是否准确,所以输入输出对就可以了。

在这里插入图片描述

http://www.lryc.cn/news/518606.html

相关文章:

  • 进程间通信——网络通信——UDP
  • 【我的 PWN 学习手札】IO_FILE 之 FSOP
  • 新兴的开源 AI Agent 智能体全景技术栈
  • 统计学习方法(第二版) 概率分布学习
  • 淺談Cocos2djs逆向
  • 【ROS2】RViz2加载URDF模型文件
  • Unity导入特效,混合模式无效问题
  • el-table自定义按钮控制扩展expand
  • opencv CV_TM_SQDIFF未定义标识符
  • 2024acl论文体悟
  • 【Git原理与使用】版本回退reset 详细介绍、撤销修改、删除文件
  • 反规范化带来的数据不一致问题的解决方案
  • 【Android】直接使用binder的transact来代替aidl接口
  • Python机器学习笔记(十八、交互特征与多项式特征)
  • 《跟我学Spring Boot开发》系列文章索引❤(2025.01.09更新)
  • 【AI进化论】 如何让AI帮我们写一个项目系列:将Mysql生成md文档
  • (已开源-AAAI25) RCTrans:雷达相机融合3D目标检测模型
  • Elasticsearch:在 HNSW 中提前终止以实现更快的近似 KNN 搜索
  • unittest VS pytest
  • Tableau数据可视化与仪表盘搭建-基础图表制作
  • Center Loss 和 ArcFace Loss 笔记
  • 3125: 【入门】求1/1+1/2+2/3+3/5+5/8+8/13+13/21……的前n项的和
  • 如何确保获取的淘宝详情页数据的准确性和时效性?
  • 云计算是如何帮助企业实现高可用性的
  • 143.《python中使用pymongo》
  • Babylon.js 的 Mesh 与 Unity 的 GameObject:深入对比与分析
  • MySQL安装,配置教程
  • Android折叠屏适配(权宜之计)
  • Spark是什么?Flink和Spark区别
  • Cocos Creator 3.8 修改纹理像素值