310485: CF1841B. Keep it Beautiful

Memory Limit:512 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

B. Keep it Beautifultime limit per test2 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard output

The array $[a_1, a_2, \dots, a_k]$ is called beautiful if it is possible to remove several (maybe zero) elements from the beginning of the array and insert all these elements to the back of the array in the same order in such a way that the resulting array is sorted in non-descending order.

In other words, the array $[a_1, a_2, \dots, a_k]$ is beautiful if there exists an integer $i \in [0, k-1]$ such that the array $[a_{i+1}, a_{i+2}, \dots, a_{k-1}, a_k, a_1, a_2, \dots, a_i]$ is sorted in non-descending order.

For example:

  • $[3, 7, 7, 9, 2, 3]$ is beautiful: we can remove four first elements and insert them to the back in the same order, and we get the array $[2, 3, 3, 7, 7, 9]$, which is sorted in non-descending order;
  • $[1, 2, 3, 4, 5]$ is beautiful: we can remove zero first elements and insert them to the back, and we get the array $[1, 2, 3, 4, 5]$, which is sorted in non-descending order;
  • $[5, 2, 2, 1]$ is not beautiful.

Note that any array consisting of zero elements or one element is beautiful.

You are given an array $a$, which is initially empty. You have to process $q$ queries to it. During the $i$-th query, you will be given one integer $x_i$, and you have to do the following:

  • if you can append the integer $x_i$ to the back of the array $a$ so that the array $a$ stays beautiful, you have to append it;
  • otherwise, do nothing.

After each query, report whether you appended the given integer $x_i$, or not.

Input

The first line contains one integer $t$ ($1 \le t \le 10^4$) — the number of test cases.

Each test case consists of two lines. The first line contains one integer $q$ ($1 \le q \le 2 \cdot 10^5$) — the number of queries. The second line contains $q$ integers $x_1, x_2, \dots, x_q$ ($0 \le x_i \le 10^9$).

Additional constraint on the input: the sum of $q$ over all test cases does not exceed $2 \cdot 10^5$).

Output

For each test case, print one string consisting of exactly $q$ characters. The $i$-th character of the string should be 1 if you appended the integer during the $i$-th query; otherwise, it should be 0.

ExampleInput
3
9
3 7 7 9 2 4 6 3 4
5
1 1 1 1 1
5
3 2 1 2 3
Output
111110010
11111
11011
Note

Consider the first test case of the example. Initially, the array is $[]$.

  • trying to append an integer $3$. The array $[3]$ is beautiful, so we append $3$;
  • trying to append an integer $7$. The array $[3, 7]$ is beautiful, so we append $7$;
  • trying to append an integer $7$. The array $[3, 7, 7]$ is beautiful, so we append $7$;
  • trying to append an integer $9$. The array $[3, 7, 7, 9]$ is beautiful, so we append $9$;
  • trying to append an integer $2$. The array $[3, 7, 7, 9, 2]$ is beautiful, so we append $2$;
  • trying to append an integer $4$. The array $[3, 7, 7, 9, 2, 4]$ is not beautiful, so we don't append $4$;
  • trying to append an integer $6$. The array $[3, 7, 7, 9, 2, 6]$ is not beautiful, so we don't append $6$;
  • trying to append an integer $3$. The array $[3, 7, 7, 9, 2, 3]$ is beautiful, so we append $3$;
  • trying to append an integer $4$. The array $[3, 7, 7, 9, 2, 3, 4]$ is not beautiful, so we don't append $4$.

Input

题意翻译

Alice 和 Bob 玩游戏,他们有一块黑板。最初,有 $n$ 个整数 $1$。Alice 和 Bob 轮流操作,Alice 先手。 轮到时,玩家必须在棋盘上选择几个(至少两个)相等的整数,擦除它们,然后写一个等于它们总和的新整数。 如果玩家不能移动(棋盘上的所有整数都不同),该玩家将赢得游戏。 如果两名选手都发挥最佳,则确定谁获胜。

Output

题目大意:
一个数组 [a1, a2, …, ak] 被称为“美丽”的,如果可以删除数组开头的几个(可能为零)元素,并按照相同的顺序将它们插入到数组的末尾,使得结果数组按非降序排序。

更具体地说,数组 [a1, a2, …, ak] 是“美丽”的,如果存在一个整数 i ∈ [0, k-1],使得数组 [ai+1, ai+2, …, ak-1, ak, a1, a2, …, ai] 按非降序排序。

例如:
- [3, 7, 7, 9, 2, 3] 是“美丽”的:我们可以删除前四个元素并将它们按相同顺序插入到末尾,得到数组 [2, 3, 3, 7, 7, 9],它是按非降序排序的;
- [1, 2, 3, 4, 5] 是“美丽”的:我们可以不删除任何元素,数组已经按非降序排序;
- [5, 2, 2, 1] 不是“美丽”的。

注意,任何包含零个或一个元素的数组都是“美丽”的。

你有一个初始为空的数组 a,需要处理 q 个查询。在第 i 个查询中,你会得到一个整数 xi,并需要执行以下操作:
- 如果将整数 xi 追加到数组 a 的末尾后,数组 a 仍然是“美丽”的,那么就追加它;
- 否则,不进行任何操作。

在每个查询之后,报告你是否追加了给定的整数 xi。

输入输出数据格式:
输入:
- 第一行包含一个整数 t(1 ≤ t ≤ 10^4)——测试用例的数量。
- 每个测试用例包含两行。第一行包含一个整数 q(1 ≤ q ≤ 2 * 10^5)——查询的数量。第二行包含 q 个整数 x1, x2, …, xq(0 ≤ xi ≤ 10^9)。
- 输入的附加限制:所有测试用例的 q 之和不超过 2 * 10^5。

输出:
- 对于每个测试用例,打印一个由恰好 q 个字符组成的字符串。如果第 i 个查询中追加了整数,则字符串的第 i 个字符应为 1;否则,应为 0。题目大意: 一个数组 [a1, a2, …, ak] 被称为“美丽”的,如果可以删除数组开头的几个(可能为零)元素,并按照相同的顺序将它们插入到数组的末尾,使得结果数组按非降序排序。 更具体地说,数组 [a1, a2, …, ak] 是“美丽”的,如果存在一个整数 i ∈ [0, k-1],使得数组 [ai+1, ai+2, …, ak-1, ak, a1, a2, …, ai] 按非降序排序。 例如: - [3, 7, 7, 9, 2, 3] 是“美丽”的:我们可以删除前四个元素并将它们按相同顺序插入到末尾,得到数组 [2, 3, 3, 7, 7, 9],它是按非降序排序的; - [1, 2, 3, 4, 5] 是“美丽”的:我们可以不删除任何元素,数组已经按非降序排序; - [5, 2, 2, 1] 不是“美丽”的。 注意,任何包含零个或一个元素的数组都是“美丽”的。 你有一个初始为空的数组 a,需要处理 q 个查询。在第 i 个查询中,你会得到一个整数 xi,并需要执行以下操作: - 如果将整数 xi 追加到数组 a 的末尾后,数组 a 仍然是“美丽”的,那么就追加它; - 否则,不进行任何操作。 在每个查询之后,报告你是否追加了给定的整数 xi。 输入输出数据格式: 输入: - 第一行包含一个整数 t(1 ≤ t ≤ 10^4)——测试用例的数量。 - 每个测试用例包含两行。第一行包含一个整数 q(1 ≤ q ≤ 2 * 10^5)——查询的数量。第二行包含 q 个整数 x1, x2, …, xq(0 ≤ xi ≤ 10^9)。 - 输入的附加限制:所有测试用例的 q 之和不超过 2 * 10^5。 输出: - 对于每个测试用例,打印一个由恰好 q 个字符组成的字符串。如果第 i 个查询中追加了整数,则字符串的第 i 个字符应为 1;否则,应为 0。

加入题单

上一题 下一题 算法标签: