这是一道水题,看清题意就可以码出来
代码:
#include<iostream>
using namespace std;
int a[1000];
char b[1000];
int main()
{
int t;
while(cin>>t)
{
while(t--)
{
int n;
cin>>n;
int i,j;
int p=0,q=1;
for(i=1;i<=n;++i)
{
cin>>a[i];
for(j=q;j<=q+a[i]-p-1;j++)
b[j]='(';
b[j++]=')';
q=j;
p=a[i];
}
int l=n;
for(i=1;i<=2*n;i++)
{
int k=1;
int h=0;
if(b[i]==')')
{
for(j=i-1;j>=1;--j)
{
if(b[j]==')')
k++;
else
{
k--;
h++;
}
if(!k)
{
cout<<h;
if(l!=1)
cout<<' ';
else
cout<<endl;
break;
}
}
l--;
}
}
}
}
return 0;
}