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.
The 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.
Output the word s after the correction.
5 weird
werd
4 word
word
5 aaeaa
a
Explanations 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.
题意:aeiouy为元音,单词中连续出现2个元音则把后面的元音删除.
思路:string.erase(pos,len)
#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:102400000,102400000")
#define INF 0x3f3f3f3f
#define MOD 1000000007
#define bug1 cout <<"bug1"<<endl
#define bug2 cout <<"bug2"<<endl
#define bug3 cout <<"bug3"<<endl
using namespace std;
typedef long long ll;
const int MAX_N=1e5+5;
char s[200];
vector <char> ans;
bool check(char a){
if(a=='y'||a=='a'||a=='e'||a=='i'||a=='o'||a=='u') return true;
return false;
}
int main(void){
int n;
cin >> n;
string s;
cin >> s;
for(int i=1;i<(int)s.size();i++){
if(check(s[i-1])&&check(s[i])){
s.erase(i,1);
i--;
}
}
cout << s << endl;
}