Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
123157 | 刘嘉柚 | 字符串的展开 | C++ | 通过 | 100 | 0 MS | 268 KB | 796 | 2024-01-22 17:24:25 |
#include<bits/stdc++.h> using namespace std; int main() { string s1,s2; int p1,p2,p3; cin>>p1>>p2>>p3>>s1; s1=' '+s1+' '; for(int i=1;i<s1.size()-1;i++){ if(s1[i]!='-') s2+=s1[i]; else{ if(s1[i-1]<s1[i+1] && (isdigit(s1[i-1]) && isdigit(s1[i+1]) || islower(s1[i-1]) && islower(s1[i+1]))){ if(p3==1){ for(char j=s1[i-1]+1;j<s1[i+1];j++){ for(int k=1;k<=p2;k++){ if(p1==1) s2+=j; else if(p1==2) s2+=toupper(j); else if(p1==3) s2+='*'; } } } if(p3==2){ for(char j=s1[i+1]-1;j>s1[i-1];j--){ for(int k=1;k<=p2;k++){ if(p1==1) s2+=j; else if(p1==2) s2+=toupper(j); else if(p1==3) s2+='*'; } } } } else s2+='-'; } } cout<<s2; return 0; }