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

题目描述:

给你两个长度相等的数组 nums1nums2

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

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

返回整数 x

输入输出实例:

以下给出两种思路:

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

python 复制代码
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】:

python 复制代码
class Solution:
    def addedInteger(self, nums1: List[int], nums2: List[int]) -> int:
        nums1.sort()
        nums2.sort()
        x = nums2[0] - nums1[0]
        return x
相关推荐
副露のmagic15 分钟前
数组章节 leetcode 思路&实现
算法·leetcode·职场和发展
荣光属于凯撒18 分钟前
P2176 [USACO11DEC] RoadBlock S / [USACO14FEB] Roadblock G/S
算法·图论
kcuwu.19 分钟前
Python面向对象:封装、继承、多态
开发语言·python
YuanDaima204823 分钟前
LangChain基础配置与对话模型实战
人工智能·python·langchain·大模型·智能体·langgraph
河西石头25 分钟前
分享python项目与开源python项目中的效率法宝--requirements文件的使用
开发语言·python·requirements文件·批量安装python依赖·python虚拟环境配置
雨季mo浅忆31 分钟前
记录利用Cursor快速实现拖拽式问卷题型创建
算法
不懒不懒39 分钟前
【卷积神经网络作业实现人脸的关键点定位功能】
开发语言·python
Bert.Cai44 分钟前
Python集合简介
开发语言·python
Yzzz-F44 分钟前
2018-2019 ACM-ICPC, Asia Dhaka Regional ContestC[数论]
算法
tryCbest1 小时前
Java和Python开发项目部署简介
java·开发语言·python