SZ#G6BT15. 【GESP强化 六级】排列变换

提交1 通过1
通过率100%
时间限制2000ms
内存限制256MiB

题目描述

小泽得到一个由 11nn 组成的排列,并按照下面的方法递归建立一棵二叉树:排列中的最大值成为当前区间的根;最大值左边的连续部分按照同样的方法建立左子树,右边的连续部分按照同样的方法建立右子树。

整棵树根节点的深度为 00,其余节点的深度比父节点多 11。对每组排列,请按照元素在原排列中的顺序,输出每个元素在所建二叉树中的深度。

输入格式

第一行一个整数 TT,表示测试数据组数。

每组数据的第一行包含一个整数 nn;第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n,它们构成 11nn 的一个排列。

输出格式

每组数据输出一行,按照元素在原排列中的顺序输出它们的深度,相邻整数之间用一个空格分隔。

2
4
1 4 3 2
2
2 1
1 0 1 2
0 1
2
5
1 4 2 3 5
7
2 3 7 5 4 1 6
2 1 3 2 0
2 1 0 2 3 4 1
2
4
2 4 3 1
1
1
1 0 1 2
0

数据范围与约定

  • 1T1001\le T\le100
  • 每组均满足 1n1001\le n\le100
  • 同一输入文件中所有测试数据的 nn 之和不超过 100100
  • 每组序列都是 11nn 的一个排列。