80分求条 WA on #9 #10
查看原帖
80分求条 WA on #9 #10
1659012
Moonlighthuanxiyun楼主2025/8/30 15:27
#include<bits/stdc++.h>
using namespace std;
int cnt=0;
string s,ans,ans1,ans2;
bool check(char t){
	return ((t<='z'&&t>='a')||(t<='Z'&&t>='A'));
}
bool checkyy(char t){
	if(t=='a'||t=='e'||t=='i'||t=='o'||t=='u'||t=='A'||t=='E'||t=='I'||t=='O'||t=='U')return true;
	return false;
}
char p(char t){
	if(check(t)){
		cnt++;
		return '.';
	}
	return t;
}
int main(){
	getline(cin,s);
	int sz=s.size();
	ans.resize(sz);
	ans1.resize(sz);
	transform(s.begin(),s.end(),ans.begin(),p);
	cout<<ans<<'\n';
	int n=round(double(cnt)/3),cnt1=0;
	ans1=ans;
	for(int i=0;cnt1<n&&i<sz;i++){
		if(ans[i]=='.'&&check(s[i]))cnt1++;
		ans1[i]=s[i];
	}
	cout<<ans1<<'\n';
	ans2=ans1;
	int cnt2=0;
	for(int i=n;i<sz;i++){
		if(checkyy(s[i])){
			ans2[i]=s[i];
			cnt2++;
		}
	}
	if(cnt2!=0){
		cout<<ans2;
		return 0;
	}
	else cnt2=0;
	int k=round(double(cnt)/3*2);
	for(int i=0;cnt2<k&&i<sz;i++){
		if(check(s[i]))cnt2++;
		ans2[i]=s[i];
	}
	cout<<ans2;
	return 0;
}
2025/8/30 15:27
加载中...