Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
143571 | 陈家宝 | 字符串的展开 | C++ | 通过 | 100 | 0 MS | 256 KB | 789 | 2024-04-16 16:54:08 |
#include<bits/stdc++.h> using namespace std; int p1,p2,p3; string solve(char a,char b){ string ans=""; if(a>=b)return"-"; else if('a'<=a&&a<='z'&&'a'<=b&&b<='z'){ if(p1==2)a-=32,b-=32; for(char i=a+1;i<=b-1;i++)for(int k=1;k<=p2;k++)ans+=i; } else if('0'<=a&&a<='9'&&'0'<=b&&b<='9')for(char i=a+1;i<=b-1;i++)for(int k=1;k<=p2;k++)ans+=i; else return"-"; if(p1==3){ string ans2; for(int i=ans.size()-1;i>=0;i--)ans2+='*'; return ans2; } if(p3==2){ string ans2; for(int i=ans.size()-1;i>=0;i--)ans2+=ans[i]; return ans2; } return ans; } int main(){ string s; cin>>p1>>p2>>p3>>s; cout<<s[0]; for(int i=1;i<s.length()-1;i++){ if(s[i]=='-')cout<<solve(s[i-1],s[i+1]); else cout<<s[i]; } cout<<s[s.length()-1]; return 0; }