給定一個句子,由大小寫英文字母組成,以空格爲單詞的分割。.net
按如下規則修改單詞:code
ma
;ma
;a
。n爲當前單詞在句子中的次序,從1開始。即,在第1個單詞按以上規則轉換完成後,再加1個a。在第2個單詞末尾加2個a,第3個加3個a,以此類推。首先,須要把句子分割成單詞。用str_explode就能夠實現。leetcode
分割後,判斷首字母是否不是元音。
不是元音,則將第一個字母移到最後。字符串
給字符串末尾添加ma
。
給字符串末尾添加額外的n
個a
。get
<?php class Solution { /** * @param String $S * @return String */ function toGoatLatin($S) { $words = explode(' ', $S); $newWords = []; foreach($words as $key => $word){ if(!in_array($word[0],['a','e','i','o','u','A','E','I','O','U'])){ $word .= $word[0]; $word = substr($word,1); } $word .= 'ma'.str_repeat('a', $key+1); $newWords[] = $word; } return implode(' ', $newWords); } }
若以爲本文章對你有用,歡迎用愛發電資助。io