1218.最长定差子序列
链接:1218.最长定差子序列
难度:Medium
标签:数组、哈希表、动态规划
简介:给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。
题解 1 - typescript
- 编辑时间:2021-11-05
- 执行用时:96ms
- 内存消耗:48.5MB
- 编程语言:typescript
- 解法介绍:哈希存储。
function longestSubsequence(arr: number[], difference: number): number {
let max = 1;
const map = new Map<number, number>();
for (const num of arr) {
const cnt = (map.get(num) ?? 0) + 1;
map.set(num + difference, cnt);
max = Math.max(max, cnt);
}
return max;
}