-
Notifications
You must be signed in to change notification settings - Fork 25
/
0824-goat-latin.js
65 lines (53 loc) · 1.92 KB
/
0824-goat-latin.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
// 824. Goat Latin
// Easy 61%
// A sentence S is given, composed of words separated by spaces. Each word
// consists of lowercase and uppercase letters only.
// We would like to convert the sentence to "Goat Latin" (a made-up language
// similar to Pig Latin.)
// The rules of Goat Latin are as follows:
// If a word begins with a vowel (a, e, i, o, or u), append "ma" to the end
// of the word.
// For example, the word 'apple' becomes 'applema'.
// If a word begins with a consonant (i.e. not a vowel), remove the first
// letter and append it to the end, then add "ma".
// For example, the word "goat" becomes "oatgma".
// Add one letter 'a' to the end of each word per its word index in the
// sentence, starting with 1.
// For example, the first word gets "a" added to the end, the second word
// gets "aa" added to the end and so on.
// Return the final sentence representing the conversion from S to Goat Latin.
// Example 1:
// Input: "I speak Goat Latin"
// Output: "Imaa peaksmaaa oatGmaaaa atinLmaaaaa"
// Example 2:
// Input: "The quick brown fox jumped over the lazy dog"
// Output: "heTmaa uickqmaaa rownbmaaaa oxfmaaaaa umpedjmaaaaaa overmaaaaaaa
// hetmaaaaaaaa azylmaaaaaaaaa ogdmaaaaaaaaaa"
// Notes:
// S contains only uppercase, lowercase and spaces. Exactly one space between
// each word.
// 1 <= S.length <= 150.
/**
* @param {string} S
* @return {string}
*/
const toGoatLatin = function(S) {
const words = S.split(' ')
const VOWEL = 'aeiouAEIOU'
let res = ''
for (let i = 0; i < words.length; i++) {
res += ' ' +
(VOWEL.includes(words[i][0]) ? words[i] : words[i].substring(1) + words[i][0])
+ 'm' + 'a'.repeat(i + 2)
}
return res.substring(1)
}
;[
'I speak Goat Latin',
'The quick brown fox jumped over the lazy dog',
].forEach((S) => {
console.log(toGoatLatin(S))
})
// Solution:
// 根据题意直接转换每个字符串即可
// Submission Result: Accepted