Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
121970 刘嘉乐 字符串的展开 C++ 解答错误 50 0 MS 252 KB 1046 2024-01-22 10:53:01

Tests(5/10):


#include<bits/stdc++.h> using namespace std; int main(){ int p1,p2,p3; cin>>p1>>p2>>p3; string s; cin>>s; string res = ""; for(int i = 0;i<s.size();i++){ if(s[i]!='-')res+=s[i]; if(s[i] == '-'){ if(s[i-1]>=s[i+1]){ res+='-'; continue; } if(s[i-1]+1 == s[i+1])continue; if(p1 == 1){ if(p3 == 1){ for(int j=s[i-1]+1;j<=s[i+1]-1;j++){ for(int k=1;k<=p2;k++){ res+=char(j); } } }else{ for(int j=s[i+1]-1;j>=s[i-1]+1;j--){ for(int k=1;k<=p2;k++){ res+=char(j); } } } }else if(p1 == 2){ if(p3 == 1){ for(int j=s[i-1]+1;j<=s[i+1]-1;j++){ for(int k=1;k<=p2;k++){ res+=char(j-32); } } }else{ for(int j=s[i+1]-1;j>=s[i-1]+1;j--){ for(int k=1;k<=p2;k++){ res+=char(j-32); } } } }else{ for(int j=s[i-1]+1;j<=s[i+1]-1;j++){ for(int k=1;k<=p2;k++){ res+='*'; } } } } } cout<<res<<endl; return 0; }


测评信息: