40急救
查看原帖
40急救
718017
Dream__maker楼主2023/12/23 10:08
#include <bits/stdc++.h>
using namespace std;
string sa,s;
int len[150];
bool flag;
int check(char x) {
	if(x=='a'||x=='e'||x=='i'||x=='o'||x=='u') return 1;
	if(x=='A'||x=='E'||x=='I'||x=='O'||x=='U') return 1;
	return 0;
}
int zm(int x) {
	if(s[x]>='a'&&s[x]<='z'||s[x]>='A'&&s[x]<='Z') return 1;
	else return 0;
}
void solve(int x) {
	for(int i=1;i<=len[x];i++) cout<<' ';
}
int main() {
	getline(cin,sa);
	for(int i=0;i<sa.size();i++) {
		if(sa[i]!=' ') s+=sa[i];
		if(sa[i]==' ') len[s.size()]++;
	}
	for(int i=0;i<s.size();i++) {
		solve(i);
		if(zm(i)) cout<<'.';
		else cout<<s[i];
		if(i+1>1.0*s.size()/3&&check(s[i])&&!flag) flag=1;
	}
	cout<<endl;
	for(int i=0;i<s.size();i++) {
		solve(i);
		if(i+1<=1.0*s.size()/3) cout<<s[i];
		else if(zm(i)) cout<<'.';
		else cout<<s[i];
	} 
	cout<<endl;
	for(int i=0;i<s.size();i++) {
		solve(i);
		if(i+1<=2.0*s.size()/3) {
			cout<<s[i];
			continue;
		}
		if(flag) {
			if(check(s[i])||!zm(i)) cout<<s[i];
			else cout<<'.';
			continue;
		}
		if(!flag) {
			if(i+1<=2.0*s.size()/3||!zm(i)) cout<<s[i];
			else cout<<'.';
			continue;
		}
	}
	return 0;
}
2023/12/23 10:08
加载中...