20分!!!1,3测试点对了。
查看原帖
20分!!!1,3测试点对了。
1082700
13783521740cy楼主2024/9/28 10:22
#include <bits/stdc++.h>
using namespace std;
void lesson1(){
	int a,b,c;
	char be,en;
	cin>>a>>b>>c;
	string s;
	cin>>s;
	for(int i=0;i<s.size()-1;i++){
		int z=0;
		if(s[i-1]!='-'&&s[i]!='-'&&s[i+1]!='-'){
			cout<<s[i];
		}
		if(s[i]=='-'&&s[i-2]=='-')z=1;
		if(s[i]=='-'){
			string sa,sb="",sc;
			sa=s.substr(i-1,3);
			be=sa[0];
			en=sa[sa.size()-1];
			if(z==0)cout<<be;
			if(be>=en)cout<<"-"<<en;
			else{
				int aa=be-'a'+1,bb=en-'a'-1;
				if(a==1){
					for(int j=aa;j<=bb;j++){
						for(int k=1;k<=b;k++){
							sb+=j+'a';
						}
					}
					if(c==2){
						for(int l=sb.size()-1;l>=0;l--){
							cout<<sb[l];
						}
					}
					if(c==1){
						cout<<sb;
					}
				}
				if(a==2){
					for(int j=aa;j<=bb;j++){
						for(int k=1;k<=b;k++){
							sb+=j+'A';
						}
					}
					if(c==2){
						for(int l=sb.size()-1;l>=0;l--){
							cout<<sb[l];
						}
					}
					if(c==1){
						cout<<sb;
					}
				}
				if(a==3){
					for(int j=aa;j<=bb;j++){
						for(int k=1;k<=b;k++){
							sb+='*';
						}
					}
					if(c==2){
						for(int l=sb.size()-1;l>=0;l--){
							cout<<sb[l];
						}
					}
					if(c==1){
						cout<<sb;
					}
				}
				cout<<en;
			}
		}
	}
}
int main(){
	lesson1();
	return 0;
}
2024/9/28 10:22
加载中...