70!!求大神!!
查看原帖
70!!求大神!!
1185878
lcct楼主2024/1/13 20:41
#include<bits/stdc++.h>
using namespace std;
string s;
int p1,p2,p3;
char f(char x){
	if(p1==3) x='*';
	else if(p1==2) {
		if(x>='a'&&x<='z') x=x-32;
	}
	return x;

}

int k=1;
int main()
{
	cin>>p1>>p2>>p3;
    cin>>s;
    cout<<s[0];
	while(s.find("-",k)!=-1){
		for(int i=k;i<=s.find("-",k)-1;i++) cout<<s[i];
		char a=s[s.find("-",k)-1],b=s[s.find("-",k)+1];
		if(b==a+1) {}
		else if(b<=a) cout<<"-";
		else if(a=='-'||b=='-') cout<<"-";
		else {
			if(p3==1){
				for(char i=a+1;i<=b-1;i++){
					for(int j=1;j<=p2;j++){
						cout<<f(i);
					}
				}
			}
			else{
				for(char i=b-1;i>=a+1;i--)
					for(int j=1;j<=p2;j++)cout<<f(i);
			}
		}
		k=s.find("-",k)+1;
	}
for(int i=k;i<=s.size()-1;i++) cout<<s[i];






    return 0;
}
2024/1/13 20:41
加载中...