JAVA求解【乱序整数序列两数之和绝对值最小】
题目
给定一个随机的整数(可能存在正整数和负整数)数组 nums ,请你在该数组中找出两个数,其和的绝对值(|nums[x]+nums[y]|)为最小值,并返回这个两个数(按从小到大返回)以及绝对值。
每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
输入描述:
一个通过空格分割的有序整数序列字符串,最多1000个整数,且整数数值范围是 [-65535, 65535]。
输出描述:
两数之和绝对值最小值
示例1
输入
-1 -3 7 5 11 15
输出
-3 5 2
说明
因为 |nums[0] + nums[2]| = |-3 + 5| = 2 最小,所以返回 -3 5 2
代码实现
package com.winyar.algorithm.od;import java.util.*;/*** @Describe 乱序整数序列两数之和绝对值最小* @Author Winyar* @Date 2022/6/19*/
public class MinAbsSum {public static void main(String[] args) {Scanner sc = new Scanner(System.in);while (sc.hasNextLine()) {String[] split = sc.nextLine().split(" ");int length = split.length;int[] arr = new int[length];for (int i = 0; i < length; i++) {arr[i] = Integer.parseInt(split[i]);}// 记录最小绝对值int min = Integer.MAX_VALUE;int[] minArr = new int[2];for (int i = 0; i < length - 1; i++) {for (int j = i + 1; j < length; j++) {int sum = Math.abs(arr[i] + arr[j]);if (sum < min) {min = sum;minArr[0] = arr[i];minArr[1] = arr[j];}}}Arrays.sort(minArr);for (int i : minArr) {System.out.print(i + " ");}System.out.println(min);}sc.close();}
}
JAVA求解【乱序整数序列两数之和绝对值最小】相关推荐
- JS前端算法:乱序整数序列两数之和绝对值最小
// 乱序整数序列两数之和绝对值最小 function sortAbs(arr) {let tmp = arr.sort((a, b) => a - b); // 先排序,感觉也可以不排序if ...
- 华为OD机试 - 乱序整数序列两数之和绝对值最小 | 机试题算法思路 【2023】
最近更新的博客 华为OD机试 - 简易压缩算法(Python) | 机试题算法思路 [2023] 华为OD机试题 - 获取最大软件版本号(JavaScript) 华为OD机试 - 猜字谜(Python ...
- 【华为OD机试真题 Python】乱序整数序列之两数之和绝对值最小
前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...
- 两个数和两数之和绝对值
""" /* 给定一个随机的整数数组(可能存在正整数和负整数)nums, 请你在该数组中找出两个数,其和的绝对值(|nums[x]+nums[y]|)为最小值 并返回这两 ...
- java 1099_【LeetCode(Java) - 1099】小于 K 的两数之和
[LeetCode(Java) - 1099]小于 K 的两数之和 [LeetCode(Java) - 1099]小于 K 的两数之和 文章目录 1.题目描述 2.解题思路 3.解题代码 1.题目描述 ...
- LeetCode 01【两数之和】【LeetCode人生第一题!】
刷题官网:https://leetcode-cn.com/ 目 录 题目 官方题解 方法一:暴力法 方法二:两遍哈希表 方法三:一遍哈希表 初次提交 题目 官方题解 方法一:暴力法 暴力法很简单, ...
- 两数之和(Python + Java)
给定一个整数数组 nums 和一个整数目标值 target,在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标. 可假设每种输入只会对应一个答案.但是,数组中同一个元素在答案里 ...
- 找出数组中两数之和为指定值的所有整数对
一,问题描述 给定一个整型数组(数组中的元素可重复),以及一个指定的值.打印出数组中两数之和为指定值的 所有整数对 二,算法分析 一共有两种方法来求解.方法一借助排序,方法二采用HashSet 方法一 ...
- Leetcode刷题第1题:两数之和(基于Java语言)
** Leetcode刷题第1题:两数之和(基于Java语言) ** 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标 ...
- leetCode:twoSum 两数之和 【JAVA实现】
LeetCode 两数之和 给定一个整数数组,返回两个数字的索引,使它们相加到特定目标. 您可以假设每个输入只有一个解决方案,并且您可能不会两次使用相同的元素. 更多文章查看个人博客 个人博客地址:t ...
最新文章
- 基本算法之递推与递归的简单应用
- 自定义EL函数、自定义JSTL标签
- C# WinForm开发系列 - DataGridView
- 利用Python自动发送电子邮件
- Java设计模式之七大结构型模式
- 心电信号越界怎么回事_心电监护仪常见故障分析与排除
- 数据分析之如何制作数据埋点文档(二)
- CodeBlocks问题解决
- day05 Python 元组
- ASP.NET中Url重写后,打不开真正的Html页面
- Cannot drop the database ‘XXX’ because it is being used for replication.
- python的规模有多大_Python项目可以有多大?最多可以有多少行代码?
- 飘云阁论坛出品汇编逆向专用记事本
- ROS系列:八、图像消息和OpenCV图像之间进行转换-cv_bridge
- 天啦噜,竟然用AI来点名!你还敢逃课吗
- sdnu 1078
- linux利用源码安装madplay
- libc、glibc和glib的关系
- C++简单程序编写和操作步骤
- Cox 比例风险模型中HR和置信区间