前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >音节判断

音节判断

作者头像
SingYi
发布2022-07-13 21:54:13
3170
发布2022-07-13 21:54:13
举报
文章被收录于专栏:Lan小站Lan小站

【问题描述】 小明对类似于 hello 这种单词非常感兴趣,这种单词可以正好分为四段,第一段由一个或多个辅音字母组成,第二段由一个或多个元音字母组成,第三段由一个或多个辅音字母组成,第四段由一个或多个元音字母组成。 给定一个单词,请判断这个单词是否也是这种单词,如果是请输出yes,否则请输出no。 元音字母包括 a, e, i, o, u,共五个,其他均为辅音字母。 【输入格式】 输入一行,包含一个单词,单词中只包含小写英文字母。 【输出格式】 输出答案,或者为yes,或者为no。 【样例输入】 lanqiao 【样例输出】 yes 【样例输入】 world 【样例输出】 no 【评测用例规模与约定】 对于所有评测用例,单词中的字母个数不超过100。

代码语言:javascript
复制
import java.util.*;

public class 音节判断 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		List<String> b = new ArrayList<String>();
		String[] t = new String[] { "false", "true", "false", "true" };
		char[] a = sc.next().toCharArray();
		for (int i = 0; i < a.length; i++) {
			String c = String.valueOf(isyuanyin(a[i]));
			if (i > 1) {
				if (c == b.get(b.size() - 1)) {
					continue;
				} else {
					b.add(c);
				}
			} else {
				b.add(c);
			}
		}
		boolean flag = true;
		for (int i = 0; i < b.size(); i++) {
			if (t[i] != b.get(i)) {
				flag = false;
				break;
			}
		}
		if (b.size() < 4) {
			System.out.println("no");
		} else {
			if (flag) {
				System.out.println("yes");
			} else {
				System.out.println("no");
			}
		}
	}

	// 判断是否是元音
	public static boolean isyuanyin(char i) {
		char[] b = { 'a', 'e', 'i', 'o', 'u' };
		boolean result = false;
		for (int j = 0; j < b.length; j++) {
			if (i == b[j]) {
				result = true;
				break;
			}
		}
		return result;
	}
}
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com