CF BUDDY
← Problems·

1450D · Rating Compression

1800 · binary search, data structures, greedy

Problem: On the competitive programming platform CodeCook, every person has a rating graph described by an array of integers aa of length nn. You are now updating the infrastructure, so you've created a program to compress these graphs.

The program works as follows. Given an integer parameter kk, the program takes the minimum of each contiguous subarray of length kk in aa.

More formally, for an array aa of length nn and an integer kk, define the kk-compression array of aa as an array bb of length nk+1n-k+1, such that bj=minjij+k1aib_j =\min_{j\le i\le j+k-1}a_i

For example, the 33-compression array of [1,3,4,5,2][1, 3, 4, 5, 2] is [min{1,3,4},min{3,4,5},min{4,5,2}]=[1,3,2].[\min\{1, 3, 4\}, \min\{3, 4, 5\}, \min\{4, 5, 2\}]=[1, 3, 2].

A permutation of length mm is an array consisting of mm distinct integers from 11 to mm in arbitrary order. For example, [2,3,1,5,4][2,3,1,5,4] is a permutation, but [1,2,2][1,2,2] is not a permutation (22 appears twice in the array) and [1,3,4][1,3,4] is also not a permutation (m=3m=3 but there is 44 in the array).

A kk-compression array will make CodeCook users happy if it will be a permutation. Given an array aa, determine for all 1kn1\leq k\leq n if CodeCook users will be happy after a kk-compression of this array or not.

Input Format: The first line contains a single integer tt (1t1041\leq t\leq 10^4) — the number of test cases.

The first line of the description of each test case contains a single integer nn (1n31051\leq n\leq 3\cdot 10^5) — the length of the array.

The second line of the description of each test case contains nn integers a1,,ana_1,\ldots,a_n (1ain1\leq a_i\leq n) — the elements of the array.

It is guaranteed, that the sum of nn for all test cases does not exceed 31053\cdot 10^5.

Output Format: For each test case, print a binary string of length nn.

The kk-th character of the string should be 11 if CodeCook users will be happy after a kk-compression of the array aa, and 00 otherwise.

Note: In the first test case, a=[1,5,3,4,2]a=[1, 5, 3, 4, 2].

  • The 11-compression of aa is [1,5,3,4,2][1, 5, 3, 4, 2] and it is a permutation.
  • The 22-compression of aa is [1,3,3,2][1, 3, 3, 2] and it is not a permutation, since 33 appears twice.
  • The 33-compression of aa is [1,3,2][1, 3, 2] and it is a permutation.
  • The 44-compression of aa is [1,2][1, 2] and it is a permutation.
  • The 55-compression of aa is [1][1] and it is a permutation.

Sample Cases

Case 1

Input

5
5
1 5 3 4 2
4
1 3 2 1
5
1 3 3 3 2
10
1 2 3 4 5 6 7 8 9 10
3
3 3 2

Output

10111
0001
00111
1111111111
000

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback