给定一个由空格分割单词的句子 S。每个单词只包含大写或小写字母。

我们要将句子转换为 “Goat Latin”(一种类似于 猪拉丁文 - Pig Latin 的虚构语言)。

山羊拉丁文的规则如下:

  • 如果单词以元音开头(a, e, i, o, u),在单词后添加"ma"
    例如,单词"apple"变为"applema"

  • 如果单词以辅音字母开头(即非元音字母),移除第一个字符并将它放到末尾,之后再添加"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”

说明:

  • S 中仅包含大小写字母和空格。单词间有且仅有一个空格。
  • 1 <= S.length <= 150
/*** @param {string} S* @return {string}*/
var toGoatLatin = function(S) {};

个人解法

var toGoatLatin = function(S) {S = S.split(" ");S.forEach((element , index) => {if(["a","e","i","o","u","A","E","I","O","U"].includes(element[0])){S[index] = S[index].split("");S[index].push("ma");for(var i = 0; i <= index; i++){S[index].push("a");}S[index] = S[index].join("");}else{S[index] = S[index].split("");S[index].push(S[index].shift());S[index].push("ma");for(var i = 0; i <= index; i++){S[index].push("a");}S[index] = S[index].join("");}});return S.join(" ");
};

LeetCode(824)——山羊拉丁文(JavaScript)相关推荐

  1. LeetCode 824. 山羊拉丁文

    1. 题目 给定一个由空格分割单词的句子 S.每个单词只包含大写或小写字母. 我们要将句子转换为 "Goat Latin"(一种类似于 猪拉丁文 - Pig Latin 的虚构语言 ...

  2. java拉丁正方形_LeetCode JAVA解题---824. 山羊拉丁文

    LeetCode 题库 全 JAVA 解题 824. 山羊拉丁文 原题回顾: 给定一个由空格分割单词的句子 S.每个单词只包含大写或小写字母. 我们要将句子转换为 "Goat Latin&q ...

  3. 824. 山羊拉丁文(模拟)

    文章目录 Question Ideas Code Question 824. 山羊拉丁文 给你一个由若干单词组成的句子 sentence ,单词间由空格分隔.每个单词仅由大写和小写英文字母组成.请你将 ...

  4. leetcode算法练习 JavaScript实现

    leetcode 表格内容由spider.js从leetcode-cn.com爬取. 已做题目答案也从leetcode-cn.com中爬取并生成文件. 解题进度:已解决 140/637 - 简单 94 ...

  5. LeetCode简单题之山羊拉丁文

    题目 给定一个由空格分割单词的句子 S.每个单词只包含大写或小写字母. 我们要将句子转换为 "Goat Latin"(一种类似于 猪拉丁文 - Pig Latin 的虚构语言). ...

  6. 山羊拉丁文 - [Python3]

    山羊拉丁文 - [Python3] 山羊拉丁文( 这是个很奇怪的名字 ) 是由 LintCode (详见 LintCode介绍)提供的一道 简单 级别的面试题,接下来我对Python3的实现做以简单解 ...

  7. 刷题汇总(一)leetcode 精选50题 JavaScript答案总结

    题目来源 腾讯精选练习(50 题) 信息更新时间:2019-3-11,因为要准备面前端,就用js做了遍来熟悉JavaScript这门语言,50道题均已提交通过. GitHub地址:https://gi ...

  8. LeetCode题解目录

    最新更新于2020.11.27 前往LeetCode主页. 前往GitHub源码.(服务器原因,暂停同步.) 前往码云主页. 已解决 456/1878 - 简单353 中等 90 困难 13 2020 ...

  9. java求最短距离,Java实现 LeetCode 821 字符的最短距离(暴力)

    821. 字符的最短距离 给定一个字符串 S 和一个字符 C.返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组. 示例 1: 输入: S = "loveleet ...

最新文章

  1. 双圆弧插值算法(一)
  2. 如何用消息系统避免分布式事务?
  3. Python 库升级问题-module ‘requests.exceptions‘ has no attribute ‘ReadTimeout‘原因及解决办法
  4. Hibernate Annotation _List/Map
  5. jsr223 java_Jmeter 组件 JSR223 使用详解
  6. couchbase_适用于具有Couchbase和WildFly的多容器和多主机应用程序的Docker Machine,Swarm和Compose...
  7. 电脑怎么彻底删除软件_电脑强力卸载工具,删除电脑无用软件,让电脑更加快捷顺畅...
  8. HashMap遍历有序性问题——map.entrySet()的无序性
  9. mycat php pdo,mycat程序写入和读取中文乱码解决
  10. 2013着重发展的4个方向
  11. IIS配置Url重写实现http自动跳转https的重定向方法(100%解决)
  12. 并发-2-Thread和Runnable的API
  13. 复仇者联盟4预售火爆 一张票在eBay上最高炒至500美元
  14. 小米商城php源码安装教程,搭建小米商城 框架div
  15. 在Solaris下安装中文语言包
  16. lan口配置 petalinux_【Xilinx-Petalinux学习】-02-建立PetaLinux工程
  17. b站python弹幕签到_B站弹幕实时效果python
  18. C++小游戏之停电救援
  19. python参考书推荐--父与子的编程之旅
  20. WOJ 1546 Maze

热门文章

  1. phpstudy thinkphp5 mysql5.5+存储emoji
  2. redis学习之redis的安装和简介
  3. mysql表死锁查询
  4. node.js中的文件系统
  5. tomcat之一:指定tomcat运行时JDK版本
  6. WCF入门学习3-配置文件与部署iis
  7. Sql语句查询当天本周本月记录的where条件
  8. C程序设计语言现代方法06:循环
  9. HM使用之2 Working Directory的解释
  10. 空间参考不存在_空间实景三维信息如何服务于BIM应用