#56768. 与或序列

与或序列

暂无测试数据。

云浅有一个长为 $n$ 的序列 $A$。但是,她忘记了序列 $A$ 中的元素具体都是什么。

不过好在她记得序列 $A$ 的 $m$ 条特征,每条特征可以用一个四元组 $(x_i,y_i,z_i,t_i)$ 表示,意思是:

  • 若 $t_i=0$,则表示 $A_{x_i}\&A_{y_i}=z_i$。
  • 若 $t_i=1$,则表示 $A_{x_i}\text{|}A_{y_i}=z_i$。

其中 $\&$ 表示二进制下的「与」运算,$|$ 表示「或」运算。

此外,她还知道,序列中的每个数都是 $[0,k)$ 中的一个整数,其中 $k$ 是 $2$ 的正整数次幂。

请你根据这些特征还原这个序列。如果有多个可能的序列,你只需要输出其中的一个即可。

如果你认为云浅记错了即不存在这样的序列,请输出 -1

输入格式

第一行三个正整数 $n,m,k$。

接下来 $m$ 行,每行四个正整数 $x_i,y_i,z_i,t_i$ 表示一条特征。

输出格式

若不存在这样的序列,输出 -1;否则输出 $n$ 个 $[0,k)$ 之间的整数表示一个合法的答案。

如果有多个可能的序列,你只需要输出其中的一个即可。

数据范围

数据点编号数据范围
$1\sim 4$$n,m,k\le 8$
$5\sim 6$$t_i=0,z_i=k-1$
$7\sim 8$$t_i=0$
$9\sim 10$$t_i=1,z_i=0$
$11\sim 12$$t_i=1$
$13\sim 20$无特殊限制

对于 $100\%$ 的数据,$1\le x_i,y_i\le n\le 2\times 10^5,m\le \min\left(2\times 10^5,n^2\right),0\le z_i\le k\le 10^9,t_i\in\{0,1\}$。

3 5 8
1 1 1 0
1 2 0 0
2 2 4 1
1 1 1 0
3 2 0 0
1 4 3
10 4 16
1 1 4 1
5 1 4 1
1 9 1 0
9 8 1 0
-1