70求救
查看原帖
70求救
457794
xbqlht21楼主2024/3/2 17:46
#include<bits/stdc++.h>
using namespace std;
bool b(char c)
{
	return c=='a'||c=='e'||c=='i'||c=='o'||c=='u'||c=='A'||c=='E'||c=='I'||c=='O'||c=='U';
}
int h(int x,string s)
{
	for(int i=s.size()-1;i>x;i--)
	{
		if(b(s[i]))
		{
			return 0;
		}
	}
	return -1;
}
void f(int x,string s)
{
	if(h(round(x/3.0),s)!=-1)
	{
		int k=round(x/3.0);
		for(int i=0;i<s.size();i++)
		{
			if(i>k)
			{
				if(!b(s[i]))
				{
					if(isalpha(s[i]))
					{
						cout<<".";
					}
					else
					{
						cout<<s[i];
					}
				}
				else
				{
					cout<<s[i];
				}
			}
			else
			{
				cout<<s[i];
			}
		}
	}
	else
	{
		int z=0;
		for(int i=0;i<s.size();i++)
		{
			if(z>=round(x/1.5))
			{
				if(isalpha(s[i]))
				{
					cout<<".";
				}
				else
				{
					cout<<s[i];
				}
			}
			else
			{
				if(isalpha(s[i]))
				{
					z++;
				}
				cout<<s[i];
			}
		}
	}
}
int main()
{
	int x=0,z=0,k;
	string s;
	getline(cin,s);
	for(int i=0;i<s.size();i++)
	{
		if(isalpha(s[i]))
		{
			cout<<".";
			x++;
		}
		else
		{
			cout<<s[i];
		}
	}
	cout<<"\n";
	for(int i=0;i<s.size();i++)
	{
		if(z>=round(x/3.0))
		{
			if(isalpha(s[i]))
			{
				cout<<".";
			}
			else
			{
				cout<<s[i];
			}
		}
		else
		{
			if(isalpha(s[i]))
			{
				z++;
			}
			cout<<s[i];
		}
	}
	cout<<"\n";
	f(x,s);
	return 0;
}

2024/3/2 17:46
加载中...