提交时间:2023-08-22 15:58:39

运行 ID: 99273

#include<bits/stdc++.h> using namespace std; int p1; int p2; int p3; string s; string st; int main() { cin>>p1; cin>>p2; cin>>p3; cin>>s; for(int i=0;i<s.size();i++) { if(s[i]!='-') { st=st+s[i]; } else if(s[i]=='-' && s[i-1]>=s[i+1]) { st=st+s[i]; } else if(s[i]=='-' && s[i-1]>='0' && s[i-1]<='9' && s[i+1]>='a' && s[i+1]<='z') { st=st+s[i]; } else if(s[i]=='-' && s[i-1]>='a' && s[i-1]<='z' && s[i+1]>='0' && s[i+1]<='9') { st=st+s[i]; } else { if(s[i-1]>='a' && s[i-1]<='z') { if(p1==1) { if(p3==1) { for(int j=(int)(s[i-1]+1);j<=(int)(s[i+1]-1);j++) { for(int k=1;k<=p2;k++) { st=st+(char)(j); } } } else { for(int j=(int)(s[i+1]-1);j>=(int)(s[i-1]+1);j--) { for(int k=1;k<=p2;k++) { st=st+(char)(j); } } } } else if(p1==2) { if(p3==1) { for(int j=(int)(s[i-1]+1);j<=(int)(s[i+1]-1);j++) { for(int k=1;k<=p2;k++) { st=st+(char)(j-32); } } } else { for(int j=(int)(s[i+1]-1);j>=(int)(s[i-1]+1);j--) { for(int k=1;k<=p2;k++) { st=st+(char)(j-32); } } } } else { for(int j=(int)(s[i-1]+1);j<=(int)(s[i+1]-1);j++) { for(int k=1;k<=p2;k++) { st=st+"*"; } } } } else if(s[i-1]>='0' && s[i-1]<='9') { if(p1!=3) { if(p3==1) { for(int j=(int)(s[i-1]+1);j<=(int)(s[i+1]-1);j++) { for(int k=1;k<=p2;k++) { st=st+(char)(j); } } } else { for(int j=(int)(s[i+1]-1);j>=(int)(s[i-1]+1);j--) { for(int k=1;k<=p2;k++) { st=st+(char)(j); } } } } else { for(int j=(int)(s[i-1]+1);j<=(int)(s[i+1]-1);j++) { for(int k=1;k<=p2;k++) { st=st+"*"; } } } } } } cout<<st; return 0; }