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 ef0677c

Browse files
authored
feat: add solutions to lc problems: No.2559 (doocs#3918)
1 parent ac790ab commit ef0677c

File tree

4 files changed

+64
-27
lines changed

4 files changed

+64
-27
lines changed

‎solution/2500-2599/2559.Count Vowel Strings in Ranges/README.md‎

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -306,15 +306,29 @@ func vowelStrings(words []string, queries [][]int) []int {
306306
```ts
307307
function vowelStrings(words: string[], queries: number[][]): number[] {
308308
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
309-
const n = words.length;
310-
const s: number[] = new Array(n + 1).fill(0);
311-
for (let i = 0; i < n; ++i) {
312-
if (vowels.has(words[i][0]) && vowels.has(words[i][words[i].length - 1])) {
313-
s[i + 1] = s[i] + 1;
314-
} else {
315-
s[i + 1] = s[i];
316-
}
317-
}
309+
const s = new Array(words.length + 1).fill(0);
310+
311+
words.forEach((w, i) => {
312+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)!));
313+
s[i + 1] = s[i] + x;
314+
});
315+
316+
return queries.map(([l, r]) => s[r + 1] - s[l]);
317+
}
318+
```
319+
320+
#### JavaScript
321+
322+
```js
323+
function vowelStrings(words, queries) {
324+
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
325+
const s = new Array(words.length + 1).fill(0);
326+
327+
words.forEach((w, i) => {
328+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)));
329+
s[i + 1] = s[i] + x;
330+
});
331+
318332
return queries.map(([l, r]) => s[r + 1] - s[l]);
319333
}
320334
```

‎solution/2500-2599/2559.Count Vowel Strings in Ranges/README_EN.md‎

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -304,15 +304,29 @@ func vowelStrings(words []string, queries [][]int) []int {
304304
```ts
305305
function vowelStrings(words: string[], queries: number[][]): number[] {
306306
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
307-
const n = words.length;
308-
const s: number[] = new Array(n + 1).fill(0);
309-
for (let i = 0; i < n; ++i) {
310-
if (vowels.has(words[i][0]) && vowels.has(words[i][words[i].length - 1])) {
311-
s[i + 1] = s[i] + 1;
312-
} else {
313-
s[i + 1] = s[i];
314-
}
315-
}
307+
const s = new Array(words.length + 1).fill(0);
308+
309+
words.forEach((w, i) => {
310+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)!));
311+
s[i + 1] = s[i] + x;
312+
});
313+
314+
return queries.map(([l, r]) => s[r + 1] - s[l]);
315+
}
316+
```
317+
318+
#### JavaScript
319+
320+
```js
321+
function vowelStrings(words, queries) {
322+
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
323+
const s = new Array(words.length + 1).fill(0);
324+
325+
words.forEach((w, i) => {
326+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)));
327+
s[i + 1] = s[i] + x;
328+
});
329+
316330
return queries.map(([l, r]) => s[r + 1] - s[l]);
317331
}
318332
```
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
function vowelStrings(words, queries) {
2+
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
3+
const s = new Array(words.length + 1).fill(0);
4+
5+
words.forEach((w, i) => {
6+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)));
7+
s[i + 1] = s[i] + x;
8+
});
9+
10+
return queries.map(([l, r]) => s[r + 1] - s[l]);
11+
}
Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
function vowelStrings(words: string[], queries: number[][]): number[] {
22
const vowels = new Set(['a', 'e', 'i', 'o', 'u']);
3-
const n = words.length;
4-
const s: number[] = new Array(n + 1).fill(0);
5-
for (let i = 0; i < n; ++i) {
6-
if (vowels.has(words[i][0]) && vowels.has(words[i][words[i].length - 1])) {
7-
s[i + 1] = s[i] + 1;
8-
} else {
9-
s[i + 1] = s[i];
10-
}
11-
}
3+
const s = new Array(words.length + 1).fill(0);
4+
5+
words.forEach((w, i) => {
6+
const x = +(vowels.has(w[0]) && vowels.has(w.at(-1)!));
7+
s[i + 1] = s[i] + x;
8+
});
9+
1210
return queries.map(([l, r]) => s[r + 1] - s[l]);
1311
}

0 commit comments

Comments
(0)

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