Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
99177 | 刘星辰liuxingchen | 字符串的展开 | C++ | 解答错误 | 60 | 1 MS | 364 KB | 2173 | 2023-08-22 11:28:14 |
#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; }