Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
3609 | 邓小龙 | 字符串展开 | C++ | Accepted | 0 MS | 260 KB | 1146 | 2024-06-21 21:56:23 |
# include<iostream> using namespace std; int p1, p2, p3; string a, b; string launch(char s1, char s2){ b = ""; if(s2>s1+1&&abs(s2-s1)<26){ if(p3==1){ for(int i = s1+1; i < s2; i++)for(int j = 0; j < p2; j++){ if(p1==1)b += char(i); else if(p1==2){ if(i>96)b += char(i-32); else b += char(i); } else b += "*"; } }else{ for(int i = s2-1; i >s1; i--)for(int j = 0; j < p2; j++){ if(p1==1)b += char(i); else if(p1==2){ if(i>96)b += char(i-32); else b += char(i); } else b += "*"; } } return b; } if(s2==s1+1)return ""; return "-"; } int main(){ cin>>p1>>p2>>p3>>a; for(int i = 0; i < a.size()-1; i++) if(a[i]=='-'&&i>0&&i<a.size()-1&&a[i-1]!='-'&&a[i+1]!='-'){ string c = launch(a[i-1], a[i+1]); a = a.erase(i, 1).insert(i, c); } cout<<a; return 0; }