Skip to content

Commit 0f02903

Browse files
committed
https://leetcode.cn/problems/remove-letter-to-equalize-frequency/
1 parent f73b844 commit 0f02903

File tree

4 files changed

+22
-0
lines changed

4 files changed

+22
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ leetcode 测试
1010

1111
##### 包含的内容如下
1212

13+
https://leetcode.cn/problems/remove-letter-to-equalize-frequency/
14+
1315
https://leetcode.cn/problems/longest-uploaded-prefix/
1416

1517
https://leetcode.cn/problems/find-mode-in-binary-search-tree/

deps.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ export {
77
equal,
88
} from "https://deno.land/[email protected]/testing/asserts.ts";
99
export { default as random } from "https://cdn.skypack.dev/[email protected]/random?dts";
10+
export { default as countBy } from "https://cdn.skypack.dev/[email protected]/countBy?dts";
1011
export { default as zip } from "https://cdn.skypack.dev/[email protected]/zip?dts";
1112
export { default as isEqual } from "https://cdn.skypack.dev/[email protected]/isEqual?dts";
1213
export { default as uniqBy } from "https://cdn.skypack.dev/[email protected]/uniqBy?dts";
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import { countBy } from "../deps.ts";
2+
3+
function equalFrequency(word: string): boolean {
4+
for (let i = 0; i < word.length; i++) {
5+
const obj = countBy(word.slice(0, i) + word.slice(i + 1)),
6+
set = new Set();
7+
for (const k in obj) {
8+
set.add(obj[k]);
9+
}
10+
if (set.size === 1) return true;
11+
}
12+
return false;
13+
}
14+
export default equalFrequency;
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { assertEquals } from "https://deno.land/[email protected]/testing/asserts.ts";
2+
import equalFrequency from "./index.ts";
3+
Deno.test("remove-letter-to-equalize-frequency", () => {
4+
assertEquals(["abcc", "aazz"].map(equalFrequency), [true, false]);
5+
});

0 commit comments

Comments
 (0)