时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
我们规定元音字母有a、e、i、o、u,并且规定半元音字母y也是元音字母。
Cwbc在学习英语,XHRlyb为了让Cwbc的记忆更加深刻,于是她让Cwbc把每个字符串的所有字母都变成一个
恰好
不大于它本身的小写元音字母。
可是Cwbc比较贪玩,并且他想让你帮他完成这个任务。
聪明的你在仔细阅读题目后,一定可以顺利的解决这个问题!
输入描述:
输入数据有多行,每行有一个仅包含小写字母的字符串。
输出描述:
输出数据应有多行,每行有一个变化后的字符串。
示例1
输入
aeiou
输出
aeiou
说明
元音字母变为一个恰好不大于它本身的字母,也就是元音字母本身
示例2
输入
bfjpv
输出
aeiou
说明
输入样例是由元音字母a、e、i、o、u的后一个字母组成,每个字母变为一个恰好不大于它本身的字母,也就是a、e、i、o、u。
备注:
每行字符串长度不超过2×105,字符串总长度不超过106。
题解:找恰好不大于它本身的的小写元音字母,我们对每个目开始从y,u,o,i,e,a的反顺序找就可以了。
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;
char ans[10]= {'y','u','o','i','e','a'};
while(cin>>s)
{
for(int i=0; i<s.size(); i++)
for(int j=0; j<6; j++)
if(s[i]>=ans[j])
{
s[i]=ans[j];
break;
}
cout<<s<<endl;
}
return 0;
}