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
相关推荐
沐怡旸几秒前
【算法--链表】138.随机链表的复制--通俗讲解
算法·面试
anlogic6 分钟前
Java基础 9.10
java·开发语言·算法
程序员奈斯9 分钟前
Python深度学习:NumPy数组库
python·深度学习·numpy
薛定谔的算法9 分钟前
JavaScript单链表实现详解:从基础到实践
数据结构·算法·leetcode
yongche_shi11 分钟前
第二篇:Python“装包”与“拆包”的艺术:可迭代对象、迭代器、生成器
开发语言·python·面试·面试宝典·生成器·拆包·装包
深度学习lover11 分钟前
<数据集>yolo梨幼果识别数据集<目标检测>
python·yolo·目标检测·计算机视觉·数据集
CoovallyAIHub18 分钟前
CostFilter-AD:用“匹配代价过滤”刷新工业质检异常检测新高度! (附论文和源码)
深度学习·算法·计算机视觉
幻奏岚音19 分钟前
《数据库系统概论》第一章 初识数据库
数据库·算法·oracle
你好,我叫C小白20 分钟前
贪心算法(最优装载问题)
算法·贪心算法·最优装载问题
CoovallyAIHub26 分钟前
CVPR 2025 | 频率动态卷积(FDConv):以固定参数预算实现频率域自适应,显著提升视觉任务性能
深度学习·算法·计算机视觉