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

Tests(7/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]!='-'||i == 0||i == s.size()-1||s[i-1]=='-'||s[i+1] == '-')res+=s[i]; else if(s[i] == '-'&&(s[i-1] >= 'a'&&s[i-1] <= 'z'&&s[i+1]>='a'&&s[i+1]<='z'||s[i+1] >= '0'&&s[i+1] <= '9'&&s[i-1]>='0'&&s[i-1]<='9')){ 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(char j=s[i-1]+1;j<=s[i+1]-1;j++){ for(int k=1;k<=p2;k++){ if(j>='a'&&j<='z')res+=char(j-32); } } }else{ for(char j=s[i+1]-1;j>=s[i-1]+1;j--){ for(int k=1;k<=p2;k++){ if(j>='a'&&j<='z')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; }


测评信息: