Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
35999 | xujindong | 字符串的展开 | C++ | 通过 | 100 | 0 MS | 268 KB | 479 | 2021-12-18 21:04:03 |
#include <bits/stdc++.h> using namespace std; int main() { int a,b,c; string s; cin>>a>>b>>c>>s; for(int i=1; i<(s.length()-1); i++) { if(s[i]=='-') { char l=s[i-1],r=s[i+1]; if(r>l&&((isdigit(l)&&isdigit(r))||(islower(l)&&islower(r)))){s.erase(i,1);for(char j=(c==2?(l+1):(r-1)); ((c==2)&&(j<r))||((c==1)&&(j>l)); j+=((c*2)-3))s.insert(i,b,(a==3?'*':((a==2)&&(islower(l) && islower(r))?toupper(j):j)));} } } cout<<s<<'\n'; }