自己编了些数据都是对的,不知道哪里忽略了......
#include<iostream>
#include<string>
using namespace std;
void change(char *c,int n)
{
for(int i=0;i<=n-1;i++)
{
c[i]='#';
}
}
void OUT(char *a,int i)
{
for(int i2=1;i2<=i;i2++)
{
for(int i3=0;a[i3]!='\n'&&a[i3]!='#';i3++)
{
int m=0;
if(a[i3]!='[') cout<<a[i3];
else
{
m=1;
int n=a[i3+1]-48;char c[1000];
change(c,1000);
for(int i4=i3+2,x=0,i5=0;;i4++,i5++)
{
if(a[i4]=='[') x++;
else if(a[i4]==']') x--;
i3=i4;
if(x==-1) break;
c[i5]=a[i4];
}
if(m==1)
{
OUT(c,n);
}
}
}
}
}
int main()
{
char d[2000];
change(d,2000);
fgets(d,2000,stdin);
OUT(d,1);
return 0;
}