Count Unique Characters of All Substrings of a Given String LeetCode solution in JavaScript

1
var uniqueLetterString = function (s) {
2
// Returns the number of unique characters inside the window [left, right]
3
const countUniqueCharacters = (left, right) => {
4
const counts = new Map();
5
for (let i = left; i < right; i += 1) {
6
counts.set(s[i], (counts.get(s[i]) || 0) + 1);
7
}
8
return Array.from(counts.values()).filter((x) => x === 1).length;
9
};
10

11
let sum = 0;
12
const seen = new Set();
13
const substring = (left, right) => {
14
if (seen.has(`${left}, ${right}`)) return;
15
if (right - left <= 0) return;
16

17
seen.add(`${left}, ${right}`);
18

19
sum += countUniqueCharacters(left, right);
20

21
for (let i = left; i < right; i += 1) {
22
substring(left + 1, right);
23
substring(left, right - 1);
24
}
25
};
26

27
substring(0, s.length);
28
return sum;
29
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0