3131.找出与数组相加的整数 I
【LetMeFly】3131.找出与数组相加的整数 I:最小值之差(多语言一行版)
力扣题目链接:https://leetcode.cn/problems/find-the-integer-added-to-array-i/
给你两个长度相等的数组 nums1
和 nums2
。
数组 nums1
中的每个元素都与变量 x
所表示的整数相加。如果 x
为负数,则表现为元素值的减少。
在与 x
相加后,nums1
和 nums2
相等 。当两个数组中包含相同的整数,并且这些整数出现的频次相同时,两个数组 相等 。
返回整数 x
。
示例 1:
输入:nums1 = [2,6,4], nums2 = [9,7,5]
输出:3
解释:
与 3 相加后,nums1
和 nums2
相等。
示例 2:
输入:nums1 = [10], nums2 = [5]
输出:-5
解释:
与 -5
相加后,nums1
和 nums2
相等。
示例 3:
输入:nums1 = [1,1,1,1], nums2 = [1,1,1,1]
输出:0
解释:
与 0 相加后,nums1
和 nums2
相等。
提示:
1 <= nums1.length == nums2.length <= 100
0 <= nums1[i], nums2[i] <= 1000
- 测试用例以这样的方式生成:存在一个整数
x
,使得nums1
中的每个元素都与x
相加后,nums1
与nums2
相等。
解题方法:模拟
本题没有说“若不存在这样的x返回-1”之类的,也就是说这样的x一定存在。一定存在一个x,使得nums1中的任何一个数加上x后都与nums2中的一个数对应。
那么,nums1中最小的数加上x后是不是一定与nums2中最小的数对应?也就是说,只需要用nums2中最小的数减去nums1中最小的数,就能反向计算出x。
- 时间复杂度$O(len(nums1))$
- 空间复杂度$O(1)$
AC代码
C++
1 |
|
Python
1 |
|
Java
1 |
|
Go
1 |
|
同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/141037760
3131.找出与数组相加的整数 I
https://blog.letmefly.xyz/2024/08/08/LeetCode 3131.找出与数组相加的整数I/