小蓝的构造
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

一年一度的圣诞节要到了,如果你也想圣诞老人送你礼物的话,请试着解决圣诞老人留下的这个问题。
对于一个 01 串 \mathit t ,定义函数  ,现在圣诞老人希望你给他一个长度为 \mathit n 的字符串 \mathit t ,而且,圣诞老人会规定 f(t,1) ~ f(t,n-1) 的值,你能否构造出一个合法的字符串 \mathit t 交给圣诞老人?如果有多个答案 输出任意一个即可,否则输出 "-1" (不带引号)

输入描述:

第一行输入一个正整数 n(2 \leq n \leq 40) 。
第二行输入一个长度为 n-1 的序列 a(0 \leq a_i \leq \lfloor \dfrac {n}{2} \rfloor ) 表示 f(t,1) ~ f(t,n-1) 。

输出描述:

如果有解,则输出一个长度为 \mathit n 的字符串表示答案,如果有多个答案 输出任意一个即可。否则输出 "-1" (不带引号)
示例1

输入

复制
3
1 1

输出

复制
011
示例2

输入

复制
4
1 2 1

输出

复制
0011
示例3

输入

复制
4
1 0 1

输出

复制
-1