给定一个数组,求选择出一个 最长的 公差为 k 的等差数列。如果有多个这样的等差数列,选择起点最小的那个。
他们同时对k取模,得到这个序列的最小非负整数,如果相等,则处于同一个等差序列。这样我们只需要用哈希表统计a[i] % k的个数。
在一个整数数组 nums 和一个整数 k 上定义如下消除规则。
选择一个数组 nums 中的元素值 x 作为起点。若存在非负整数 t,使得数组中的某个元素 y 满足 y=x+t⋅k,则认为 y 可以被起点 x 消除。重复出现的元素按出现次数分别计入消除数量。
请找出使消除数量最大的起点元素值;如果有多个起点元素值达到相同的最大消除数量,返回其中最小的起点元素值。
约束条件
开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册