Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 42478e4

Browse files
feat: add js solution to lc problem: No.2707 (doocs#3554)
1 parent 4fab89d commit 42478e4

File tree

3 files changed

+67
-0
lines changed

3 files changed

+67
-0
lines changed

‎solution/2700-2799/2707.Extra Characters in a String/README.md‎

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,30 @@ impl Solution {
210210
}
211211
```
212212

213+
#### JavaScript
214+
215+
```js
216+
/**
217+
* @param {string} s
218+
* @param {string[]} dictionary
219+
* @return {number}
220+
*/
221+
var minExtraChar = function (s, dictionary) {
222+
const ss = new Set(dictionary);
223+
const n = s.length;
224+
const f = Array(n + 1).fill(0);
225+
for (let i = 1; i <= n; ++i) {
226+
f[i] = f[i - 1] + 1;
227+
for (let j = 0; j < i; ++j) {
228+
if (ss.has(s.slice(j, i))) {
229+
f[i] = Math.min(f[i], f[j]);
230+
}
231+
}
232+
}
233+
return f[n];
234+
};
235+
```
236+
213237
<!-- tabs:end -->
214238

215239
<!-- solution:end -->

‎solution/2700-2799/2707.Extra Characters in a String/README_EN.md‎

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,30 @@ impl Solution {
211211
}
212212
```
213213

214+
#### JavaScript
215+
216+
```js
217+
/**
218+
* @param {string} s
219+
* @param {string[]} dictionary
220+
* @return {number}
221+
*/
222+
var minExtraChar = function (s, dictionary) {
223+
const ss = new Set(dictionary);
224+
const n = s.length;
225+
const f = Array(n + 1).fill(0);
226+
for (let i = 1; i <= n; ++i) {
227+
f[i] = f[i - 1] + 1;
228+
for (let j = 0; j < i; ++j) {
229+
if (ss.has(s.slice(j, i))) {
230+
f[i] = Math.min(f[i], f[j]);
231+
}
232+
}
233+
}
234+
return f[n];
235+
};
236+
```
237+
214238
<!-- tabs:end -->
215239

216240
<!-- solution:end -->
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/**
2+
* @param {string} s
3+
* @param {string[]} dictionary
4+
* @return {number}
5+
*/
6+
var minExtraChar = function (s, dictionary) {
7+
const ss = new Set(dictionary);
8+
const n = s.length;
9+
const f = Array(n + 1).fill(0);
10+
for (let i = 1; i <= n; ++i) {
11+
f[i] = f[i - 1] + 1;
12+
for (let j = 0; j < i; ++j) {
13+
if (ss.has(s.slice(j, i))) {
14+
f[i] = Math.min(f[i], f[j]);
15+
}
16+
}
17+
}
18+
return f[n];
19+
};

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /