Victor tries to write his own text editor, with word correction included. However, the rules of word correction are really strange.
Victor thinks that if a word contains two consecutive vowels, then it's kinda weird and it needs to be replaced. So the word corrector works in such a way: as long as there are two consecutive vowels in the word, it deletes the first vowel in a word such that there is another vowel right before it. If there are no two consecutive vowels in the word, it is considered to be correct.
You are given a word s. Can you predict what will it become after correction?
In this problem letters a, e, i, o, u and y are considered to be vowels.
InputThe first line contains one integer n (1 ≤ n ≤ 100) — the number of letters in word s before the correction.
The second line contains a string s consisting of exactly n lowercase Latin letters — the word before the correction.
OutputOutput the word s after the correction.
Examples input Copy 5 weird output werd input Copy 4 word output word input Copy 5 aaeaa output a NoteExplanations of the examples:
There is only one replace: weird werd;No replace needed since there are no two consecutive vowels;aaeaa aeaa aaa aa a.题意:
给出一个字符串,不断去掉相邻的‘a,'e','i','o','u','y'中的右边那个,直到没有没有相邻的‘a,'e','i','o','u','y'。
代码:
#include<iostream> #include<cstring> #include<cstdio> #include<string> using namespace std; int bol; int main() { int length; cin>>length; string s; cin>>s; while(1) { bol=0; for(int i=0;i<s.length();i++) { if((s[i]=='a'||s[i]=='u'||s[i]=='y'||s[i]=='i'||s[i]=='o'||s[i]=='e')&&(s[i+1]=='a'||s[i+1]=='e'||s[i+1]=='y'||s[i+1]=='o'||s[i+1]=='u'||s[i+1]=='i')) { s.erase(i+1,1); bol=1; } } if(bol==0) break; } cout<<s; return 0; }