蒟蒻救助
查看原帖
蒟蒻救助
699271
gaojizhe05楼主2024/1/24 11:41

90pts,WA on #7
Code:

#include <bits/stdc++.h>
using namespace std;
int p1,p2,p3;
string s;
int item(char c){
	if(c>='0'&&c<='9') return 1;
	else if(c>='a'&&c<='z') return 2;
	return 3;
}
void Print(int i,int j){
	for(int k=1;k<=p2;k++){
		if(item(s[i])==1||p1==1)
			putchar(j);
		else
			putchar(j-'a'+'A');
	}
}
int main(){
	cin>>p1>>p2>>p3>>s;
	for(int i=0;i<s.length();i++){
		if(s[i]=='-'){
			if(s[i+1]<=s[i-1]||item(s[i-1])!=item(s[i+1]))
			    putchar('-');
			else{
				if(p1==3)
					for(int j=1;j<=(s[i+1]-s[i-1]-1)*p2;j++)
					    putchar('*');
				else{
					if(p3==1)
					    for(char j=s[i-1]+1;j<s[i+1];j++)
					        Print(i,j);
					else
					    for(char j=s[i+1]-1;j>s[i-1];j--)
					        for(int k=1;k<=p2;k++)
					            Print(i,j);
				}
			}
		}
		else putchar(s[i]);
	}
	return 0;
} 
2024/1/24 11:41
加载中...