欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > LeetCode.3131.找出与数相加的整数I

LeetCode.3131.找出与数相加的整数I

2025/1/31 7:40:30 来源:https://blog.csdn.net/ALLe_Y/article/details/141038515  浏览:    关键词:LeetCode.3131.找出与数相加的整数I

题目描述:
 

给你两个长度相等的数组 nums1 和 nums2

数组 nums1 中的每个元素都与变量 x 所表示的整数相加。如果 x 为负数,则表现为元素值的减少。

在与 x 相加后,nums1 和 nums2 相等 。当两个数组中包含相同的整数,并且这些整数出现的频次相同时,两个数组 相等 。

返回整数 x

输入输出实例:

以下给出两种思路:

思路一:不难发现,如果整数x是一定存在的,那么nums1数组的所有元素+x得到的是nums2数组的所有元素,也就是说nums1的所有元素之和+n*nums1(或者是nums2)的长度 = nums2的所有元素之和。根据上述等式我们把x表示出来直接返回就好:

class Solution:def addedInteger(self, nums1: List[int], nums2: List[int]) -> int:#如果整数x一定存在,那么就是num1加起来的所有和+x*num1长度 = nums2加起来所有和return (sum(nums2)-sum(nums1)) // len(nums1)

思路二:既然两个列表对应元素差值是一定的,我们可以对两个列表进行排序,然后x就是他们对应元素的差了,我们可以取第一个之间做差得到x【根据这种思路我们也可以衍生出:直接用min或者max找到两个列表的最小或者最大值相减即是x】:
 

class Solution:def addedInteger(self, nums1: List[int], nums2: List[int]) -> int:nums1.sort()nums2.sort()x = nums2[0] - nums1[0]return x

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com