蒟蒻求助

P1928 外星密码

改了#3#7#8#10 wa ```#include<iostream> #include<cstring> using namespace std; char a[114514],b[114514]; int l=1,zuan=0,cd,k=0; int changdu(char a[],int stt){ int shu=0; k=0; while(a[stt]>='0'&&a[stt]<='9'){ shu*=10; shu+=(int)(a[stt]-'0'); stt++; k++; } return shu; } void zh(int st,char a[],int ed,int cs){ for(int i=0;i<cs-1;i++){//次数 for(int j=st;j<ed;j++){ b[zuan]=a[j];//存入 zuan++; } } return; } void s(char a[],int endd){ int remember=0,theend,bim=1; for(int i=0;i<endd;i++){ if(a[i]=='['&&a[i+1]>='0'&&a[i+1]<='9'){//如果等于[ remember=i;//记录最后一个[ l*=changdu(a,remember+1);//记录个数 } else if(a[i]==']'&&bim){ theend=i; zh(remember+k+1,a,theend,l); bim=0;//避免重复转换 l=1;//重置 }else if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z')){ b[zuan]=a[i]; zuan++;//不是就进位 bim=1;//判断条件回溯 } } return; } int main(){ cin>>a; cd=strlen(a); s(a,cd); cd=strlen(b); for(int i=0;i<cd;i++) cout<<b[i]; return 0; }
by power_man @ 2022-10-12 21:06:45


@[power_man](/user/750588) 还有个#include<iostream>
by power_man @ 2022-10-12 21:07:25


|