Files
leetcode/src/exercises/1048.longest-string-chain.js
2025-07-14 10:09:13 -04:00

24 lines
505 B
JavaScript

// @leet start
/**
* @param {string[]} words
* @return {number}
*/
var longestStrChain = function (words) {
let cache = {};
words.sort((a, b) => a.length - b.length);
let max = 0;
for (let word of words) {
let longest = 0;
for (let i = 0; i < word.length; i++) {
let subWord = word.slice(0, i) + word.slice(i + 1);
longest = Math.max(longest, (cache[subWord] || 0) + 1);
}
cache[word] = longest;
max = Math.max(max, longest);
}
return max;
};
// @leet end