60pts求条(玄关)
查看原帖
60pts求条(玄关)
1439731
yzbzz147268楼主2025/8/4 18:03
#include<bits/stdc++.h>
using namespace std;
char s[55];
char mp[10];
int ans,l;
int len;
void step1(){
	for(int i=0;i<len;i++){
		if((s[i]>='A'&&s[i]<='Z')||(s[i]>='a'&&s[i]<='z')){
			ans++;
			cout<<'.';
		}
		else cout<<s[i];
	}
	cout<<endl;
	return ;
}
void step2(){
	double num=ans/3.0;
	l=round(num);
	for(int i=0;i<l;i++){
		if((s[i]>='A'&&s[i]<='Z')||(s[i]>='a'&&s[i]<='z'))
			cout<<s[i];
        else{
            l++;
            cout<<s[i];
        }
	}
	for(int i=l;i<len;i++){
		if((s[i]>='A'&&s[i]<='Z')||(s[i]>='a'&&s[i]<='z'))
			cout<<'.';
        else cout<<s[i];
    }
	cout<<endl;
	return ;
}
void step3(){
	int flag=0;
	for(int i=l;i<len;i++)
        for(int j=0;j<10;j++){
            if(s[i]==mp[j]){
            	flag=1;
            	break;
			}
        }
	if(flag){
		for(int i=0;i<l;i++)
			cout<<s[i];
		for(int i=l;i<len;i++){
            int yy=0;
            for(int j=0;j<10;j++){
    			if(s[i]==mp[j]){
    				cout<<s[i];
                    yy=1;
                    break;
                }
            }
            if(yy!=1) cout<<".";
		}
	}
	else{
		double num=2.0*ans/3.0;
		l=round(num);
		for(int i=0;i<l;i++){
			if((s[i]<'A'||s[i]>'Z')&&(s[i]<'a'||s[i]>'z')){
				l++;
				cout<<s[i];
			}
			else cout<<s[i];
		}
		for(int i=l;i<len;i++){
			if((s[i]>='A'&&s[i]<='Z')||(s[i]>='a'&&s[i]<='z'))
				cout<<'.';
            else cout<<s[i];
        }
		cout<<endl;
	}
	return ;
}
int main(){
	cin.getline(s,55);
    len=strlen(s);
    mp[0]='a';mp[1]='e';mp[2]='i';mp[3]='o';mp[4]='u';
    mp[5]='A';mp[6]='E';mp[7]='I';mp[8]='O';mp[9]='U';
	step1();
	step2();
	step3();
	return 0;
}

WA #1#4#7#8

2025/8/4 18:03
加载中...