LeetCode 824 山羊拉丁文

2021-10-01 22:16:19 字數 1616 閱讀 2156

題目:

給定乙個由空格分割單詞的句子 s。每個單詞只包含大寫或小寫字母。

我們要將句子轉換為 「goat latin」(一種類似於 豬拉丁文 - pig latin 的虛構語言)。

山羊拉丁文的規則如下:

如果單詞以母音開頭(a, e, i, o, u),在單詞後新增"ma"。

如果單詞以子音字母開頭(即非母音字母),移除第乙個字元並將它放到末尾,之後再新增"ma"。

例如,單詞"goat"變為"oatgma"。

根據單詞在句子中的索引,在單詞最後新增與索引相同數量的字母'a',索引從1開始。

例如,在第乙個單詞後新增"a",在第二個單詞後新增"aa",以此類推。

返回將 s 轉換為山羊拉丁文後的句子。

示例 1

:輸入:

"i speak goat latin"

輸出:"imaa peaksmaaa oatgmaaaa atinlmaaaaa"

示例 2

:輸入:

"the quick brown fox jumped over the lazy dog"

輸出:"hetmaa uickqmaaa rownbmaaaa oxfmaaaaa umpedjmaaaaaa overmaaaaaaa hetmaaaaaaaa azylmaaaaaaaaa ogdmaaaaaaaaaa"

原始碼:

class

solution

; set

set =

newhashset

<

>()

;for

(char c : chars)

string[

] str = s.

split

(" ");

for(

int i =

0; i < str.length; i++

) sb.

(add

(i))

; s = sb.

tostring()

;}else

sb.(s.charat(0

)); sb.

(add

(i));}

str[i]

= sb.

tostring()

;}stringbuilder sb2 =

newstringbuilder()

;for

(int m =

0; m < str.length; m++

) sb2.

(str[m]);

sb2.

(" ");

}return sb2.

tostring()

;}// 此函式表示新增 m 和對應數量 a 的情況

public string add

(int x)

string str = sb.

tostring()

;return str;

}}

LeetCode 824 山羊拉丁文

隨機一題 給定乙個由空格分割單詞的句子s。每個單詞只包含大寫或小寫字母。我們要將句子轉換為 goat latin 一種類似於 豬拉丁文 pig latin 的虛構語言 山羊拉丁文的規則如下 如果單詞以子音字母開頭 即非母音字母 移除第乙個字元並將它放到末尾,之後再新增 ma 例如,單詞 goat 變...

leetcode 824 山羊拉丁文

給定乙個由空格分割單詞的句子s。每個單詞只包含大寫或小寫字母。我們要將句子轉換為 goat latin 一種類似於 豬拉丁文 pig latin 的虛構語言 山羊拉丁文的規則如下 如果單詞以子音字母開頭 即非母音字母 移除第乙個字元並將它放到末尾,之後再新增 ma 例如,單詞 goat 變為 oat...

LeetCode 824 山羊拉丁文

給定乙個由空格分割單詞的句子 s。每個單詞只包含大寫或小寫字母。我們要將句子轉換為 goat latin 一種類似於 豬拉丁文 pig latin 的虛構語言 山羊拉丁文的規則如下 返回將s轉換為山羊拉丁文後的句子。示例 1 輸入 i speak goat latin 輸出 imaa peaksma...