暴力模拟题。


AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int pre[10005],a[10005];
int n,m,flag;
string str;

int main()
{
  cin>>n;
  while(n--){
    cin>>m;
    for(int i=0;i<m;i++){
      cin>>pre[i];
      if(i==0){
        int ans = pre[i];
        while(ans--){
          str+='(';
        }
        str+=')';
      }
      else{
        int ans = pre[i] - pre[i-1];
        while(ans--){
          str+='(';
        }
        str+=')';
      }
    }
    int len = str.length();
    for(int i=0;i<len;i++){
      int num = 0,num1 = 0;
      if(str[i] == ')'){
        for(int j=i;j>=0;j--){
          if(str[j]=='('){
            printf("%d%c",num1,i==len-1?'\n':' ');
            num = 0;
            str[j] = '.';
            break;
          }
          if(str[j] == ')')num1++;
          num++;
        }
      }
    }

  }
  return 0;
}