Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
99374 黄戈 字符串的展开 C++ 通过 100 0 MS 256 KB 1468 2023-08-22 16:24:16

Tests(10/10):


#include<bits/stdc++.h> using namespace std; int p1,p2,p3; char a[101]; int main() { scanf("%d%d%d",&p1,&p2,&p3); cin>>a; for(int i=0;i<strlen(a);i++) { if(a[i]!='-') { cout<<a[i]; continue; } if(a[i-1]>='0'&&a[i-1]<='9'&&(a[i+1]<'0'||a[i+1]>'9')) { printf("-"); continue; } if(a[i+1]>='0'&&a[i+1]<='9'&&(a[i-1]<'0'||a[i-1]>'9')) { printf("-"); continue; } if(a[i-1]>=a[i+1]) { printf("-"); continue; } if(a[i+1]=='-'||a[i-1]=='-') { printf("-"); continue; } if(i==0) { printf("-"); continue; } if(p1==3&&i!=0) { for(char j=a[i-1]+1;j<a[i+1];j++) for(int k=1;k<=p2;k++) printf("*"); continue; } if(p3==1) { if(p1==1) for(char j=a[i-1]+1;j<a[i+1];j++) for(int k=1;k<=p2;k++) cout<<char(j); if(p1==2) for(char j=a[i-1]-31;j<a[i+1]-32;j++) for(int k=1;k<=p2;k++) { if((a[i+1]>='0'&&a[i+1]<='9')||(a[i-1]>='0'&&a[i-1]<='9')) cout<<char(j+30); else cout<<char(j); } } if(p3==2) { if(p1==1) for(char j=a[i+1]-1;j>a[i-1];j--) for(int k=1;k<=p2;k++) cout<<char(j); if(p1==2) for(char j=a[i+1]-33;j>a[i-1]-32;j--) for(int k=1;k<=p2;k++) { if((a[i+1]>='0'&&a[i+1]<='9')||(a[i-1]>='0'&&a[i-1]<='9')) cout<<char(j+32); else cout<<char(j); } } } return 0; }


测评信息: