201032: [AtCoder]ARC103 E - Tr/ee

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

Description

Score : $700$ points

Problem Statement

You are given a string $s$ of length $n$. Does a tree with $n$ vertices that satisfies the following conditions exist?

  • The vertices are numbered $1,2,..., n$.
  • The edges are numbered $1,2,..., n-1$, and Edge $i$ connects Vertex $u_i$ and $v_i$.
  • If the $i$-th character in $s$ is 1, we can have a connected component of size $i$ by removing one edge from the tree.
  • If the $i$-th character in $s$ is 0, we cannot have a connected component of size $i$ by removing any one edge from the tree.

If such a tree exists, construct one such tree.

Constraints

  • $2 \leq n \leq 10^5$
  • $s$ is a string of length $n$ consisting of 0 and 1.

Input

Input is given from Standard Input in the following format:

$s$

Output

If a tree with $n$ vertices that satisfies the conditions does not exist, print -1.

If a tree with $n$ vertices that satisfies the conditions exist, print $n-1$ lines. The $i$-th line should contain $u_i$ and $v_i$ with a space in between. If there are multiple trees that satisfy the conditions, any such tree will be accepted.


Sample Input 1

1111

Sample Output 1

-1

It is impossible to have a connected component of size $n$ after removing one edge from a tree with $n$ vertices.


Sample Input 2

1110

Sample Output 2

1 2
2 3
3 4

If Edge $1$ or Edge $3$ is removed, we will have a connected component of size $1$ and another of size $3$. If Edge $2$ is removed, we will have two connected components, each of size $2$.


Sample Input 3

1010

Sample Output 3

1 2
1 3
1 4

Removing any edge will result in a connected component of size $1$ and another of size $3$.

Input

题意翻译

给定一个长度为 $n$ 的 $01$ 序列 $\{s_n\}$。 尝试构造一棵具有如下性质的 $n$ 个结点的树: >$\forall i\in[1,n]\cap\mathbb{Z_+}$,$s_i$ 若为 $1$ ,则一定存在大小为 $i$ 的连通块;$s_i$ 若为 $0$ ,则一定不存在大小为 $i$ 的连通块。 > 定义连通块为删去一条边后的一个极大连通分量。 $1 \le n \le {10}^5$。

加入题单

算法标签: