#agc028e. [agc028_e]High Elements
[agc028_e]High Elements
题目描述
给定一个排列 ,其中包含了 的所有数字。
一个长度为 ,由 0
和 1
组成的字符串 满足以下条件时,称为 good string:
- 构造序列 和 的方法如下:
- 首先,将 和 初始化为空序列。
- 对于每个 ,按顺序判断 的值,如果是
0
,则将 添加到 的末尾;如果是1
,则将 添加到 的末尾。
- 如果 和 中具有相同数量的 high 元素,则称字符串 是 good string。这里,一个序列中的第 个元素被称为 high 元素,当且仅当它是该序列从第 个元素到第 个元素的最大元素。
确定是否存在 good string。如果存在,则找出字典序最小的字符串。
约束条件
- 中的数字各不相同。
- 输入数据中的所有值均为整数。
输入
从标准输入读入输入数据,输入格式如下:
输出
如果不存在 good string,则输出 -1
。如果存在,则输出字典序最小的 good string。
示例输入1
6
3 1 4 6 2 5
示例输出1
001001
令 。则,,。 中的 high 元素是第一个和第三个元素, 中的 high 元素是第一个和第二个元素。由于它们具有相同数量的 high 元素,所以 001001
是 good string。在这之前没有比它字典序更小的 good string,因此答案是 001001
。
示例输入2
5
1 2 3 4 5
示例输出2
-1
示例输入3
7
1 3 2 5 6 4 7
示例输出3
0001101
示例输入4
30
1 2 6 3 5 7 9 8 11 12 10 13 16 23 15 18 14 24 22 26 19 21 28 17 4 27 29 25 20 30
示例输出4
000000000001100101010010011101