Codeforces Round 730 (Div. 2)
E
The Final Pursuit
Codeforces
2700
原题
← D2→
翻译中…

Finally, you have defeated Razor and now, you are the Most Wanted street racer. Sergeant Cross has sent the full police force after you in a deadly pursuit. Fortunately, you have found a hiding spot but you fear that Cross and his force will eventually find you. To increase your chances of survival, you want to tune and repaint your BMW M3 GTR.

翻译中…

The car can be imagined as a permuted $n$-dimensional hypercube. A simple $n$-dimensional hypercube is an undirected unweighted graph built recursively as follows:

翻译中…
  • Take two simple $(n-1)$-dimensional hypercubes one having vertices numbered from $0$ to $2^{n-1}-1$ and the other having vertices numbered from $2^{n-1}$ to $2^{n}-1$. A simple $0$-dimensional Hypercube is just a single vertex.
  • Add an edge between the vertices $i$ and $i+2^{n-1}$ for each $0\leq i \lt 2^{n-1}$.
翻译中…

A permuted $n$-dimensional hypercube is formed by permuting the vertex numbers of a simple $n$-dimensional hypercube in any arbitrary manner.

翻译中…

Examples of a simple and permuted $3$-dimensional hypercubes are given below:

翻译中…

image

翻译中…

Note that a permuted $n$-dimensional hypercube has the following properties:

翻译中…
  • There are exactly $2^n$ vertices.
  • There are exactly $n\cdot 2^{n-1}$ edges.
  • Each vertex is connected to exactly $n$ other vertices.
  • There are no self-loops or duplicate edges.
翻译中…

Let's denote the permutation used to generate the permuted $n$-dimensional hypercube, representing your car, from a simple $n$-dimensional hypercube by $P$. Before messing up the functionalities of the car, you want to find this permutation so that you can restore the car if anything goes wrong. But the job isn't done yet.

翻译中…

You have $n$ different colours numbered from $0$ to $n-1$. You want to colour the vertices of this permuted $n$-dimensional hypercube in such a way that for each and every vertex $u$ satisfying $0\leq u \lt 2^n$ and for each and every colour $c$ satisfying $0\leq c \lt n$, there is at least one vertex $v$ adjacent to $u$ having a colour $c$. In other words, from each and every vertex, it must be possible to reach a vertex of any colour by just moving to an adjacent vertex.

翻译中…

Given the permuted $n$-dimensional hypercube, find any valid permutation $P$ and colouring.

翻译中…

Input

翻译中…

The first line of input contains a single integer $t$ ($1\leq t\leq 4096$) — the number of test cases.

翻译中…

For each test case, the first line contains a single integer $n$ ($1\leq n\leq 16$).

翻译中…

Each of the next $n\cdot 2^{n-1}$ lines contain two integers $u$ and $v$ ($0\leq u, v \lt 2^n$) denoting that there is an edge between the vertices numbered $u$ and $v$.

翻译中…

It is guaranteed that the graph described in the input is a permuted $n$-dimensional hypercube.

翻译中…

Additionally, it is guaranteed that the sum of $2^n$ over all test cases does not exceed $2^{16}=65\,536$.

翻译中…

Output

翻译中…

For each test case, print two lines.

翻译中…

In the first line, output any permutation $P$ of length $2^n$ that can be used to transform a simple $n$-dimensional hypercube to the permuted $n$-dimensional hypercube given in the input. Two permuted hypercubes are considered the same if they have the same set of edges. If there are multiple answers, output any of them.

翻译中…

In the second line, print the colouring. If there is no way to colour the vertices satisfying the conditions, output $-1$. Otherwise, output a single line containing $2^n$ space separated integers. The $i$-th integer must be the colour of the vertex numbered $(i-1)$ in the permuted $n$-dimensional hypercube. If there are multiple answers, output any of them.

翻译中…

Note

翻译中…

The colouring and the permuted hypercube for the first test case is shown below:

翻译中…

image

翻译中…

The colouring and the permuted hypercube for the second test case is shown below:

翻译中…

image

翻译中…

The permuted hypercube for the third test case is given in the problem statement. However, it can be shown that there exists no way to colour that cube satifying all the conditions. Note that some other permutations like $[0, 5, 7, 3, 1, 2, 4, 6]$ and $[0, 1, 5, 2, 7, 4, 3, 6]$ will also give the same permuted hypercube.

翻译中…

样例

Input #1
3
1
0 1
2
0 1
1 2
2 3
3 0
3
0 1
0 5
0 7
1 2
1 4
2 5
2 6
3 5
3 6
3 7
4 6
4 7
Output #1
0 1
0 0
0 1 3 2
0 0 1 1
5 3 0 7 2 6 1 4
-1
InputCopy OutputCopy
题目信息
题号
1543E
时间限制
3 s
内存限制
256 MB
标签
位运算
构造
分治
图论
贪心
数学

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。