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

Tests(4/10):


#include<bits/stdc++.h> using namespace std; int p1,p2,p3; string S,Ans; char ToChar(char ch){ if(p1 == 3){ return '*'; } return p1==1?tolower(ch):toupper(ch); } int main(){ cin>>p1>>p2>>p3>>S; S = ' '+S+' '; for(int i=1;i<S.size()-1;i++){ if(S[i]!='-')Ans+=S[i]; else { char s = S[i-1],t = S[i+1]; if(s<t&&(islower(t) && islower(t)||isdigit(s)&&isdigit(t))){ if(p3 ==1){ for(char i=s+1;i<=t-1;i++){ for(int j=1;j<=p2;j++){ Ans = ToChar(i); } } }else{ for(char i=t-1;i>=s+1;i--){ for(int j=1;j<=p2;j++){ Ans+=ToChar(i); } } } }else{ Ans+='-'; } } } cout<<Ans<<endl; return 0; }


测评信息: