atcoder#ARC143D. [ARC143D] Bridges

[ARC143D] Bridges

题目描述

1 1 以上 N N 以下の整数からなる 2 2 つの数列 A1,, AM A_1,\ldots,\ A_M および B1,,BM B_1,\ldots,B_M があります.

01 からなる長さ M M の文字列に対して,2N 2N 頂点 (M+N) (M+N) 辺からなる次のような無向グラフを対応させます:

  • i i 番目の文字が 0 のとき,i i 番目の辺は頂点 Ai A_i と頂点 (Bi+N) (B_i+N) を結ぶ辺である.
  • i i 番目の文字が 1 のとき,i i 番目の辺は頂点 Bi B_i と頂点 (Ai+N) (A_i+N) を結ぶ辺である.
  • (j+M) (j+M) 番目の辺は頂点 j j と頂点 (j+N) (j+N) を結ぶ辺である.

ただし,i i , j j はそれぞれ 1  i  M 1\ \leq\ i\ \leq\ M , 1  j  N 1\ \leq\ j\ \leq\ N を満たす整数を動くものとします. また,頂点には 1 1 から 2N 2N までの番号がついています.

対応する無向グラフに含まれる橋の個数が最小となるような,01 からなる長さ M M の文字列を 1 1 つ求めてください.

橋について グラフの辺であって,その辺を除くと連結成分の個数が増えるようなものを橋と呼びます.

输入格式

入力は以下の形式で標準入力から与えられる.

N N M M A1 A_1 A2 A_2 \cdots AM A_M B1 B_1 B2 B_2 \cdots BM B_M

输出格式

条件を満たすような文字列を 1 1 つ出力せよ.答えが複数存在する場合,いずれを出力してもかまわない.

题目大意

有两个长度为 MM 的整数数组 A1AM,B1BMA_1 \dots A_M ,B_1 \dots B_M。保证 1Ai,BiN1 \le A_i,B_i \le N。现在有一个 2N2N 个编号从 112N2N 的点的无向图,初始时第 ii 与 第 i+Ni+N 号点相连,现在对于长为 MM0/10/1 串。

  • Mi=0M_i=0 则连接一条 (Ai,Bi+N)(A_i,B_{i}+N) 的无向边。
  • Mi=1M_i=1 则连接一条 (Ai+N,Bi)(A_{i}+N,B_i) 的无向边。

现在请你构造出一个长为 MM0/10/1 串,使得此无向图的桥最少。

数据范围

1N,M2×1051 \le N,M \le 2 \times 10^5

1Ai,BiN1 \le A_i,B_i \le N

输入格式

第一行两个整数 N,MN,M

第二行 MM 个整数 A1AMA_1 \dots A_M

第三行 MM 个整数 B1BMB_1 \dots B_M

2 2
1 1
2 2
01
6 7
1 1 2 3 4 4 5
2 3 3 4 5 6 6
0100010

提示

制約

  • 1  N  2 × 105 1\ \leq\ N\ \leq\ 2\ \times\ 10^5
  • 1  M  2 × 105 1\ \leq\ M\ \leq\ 2\ \times\ 10^5
  • 1  Ai, Bi  N 1\ \leq\ A_i,\ B_i\ \leq\ N

Sample Explanation 1

01 に対応するグラフには橋が存在しません. 00 に対応するグラフでは頂点 1 1 と頂点 3 3 を結ぶ辺と頂点 2 2 と頂点 4 4 を結ぶ辺が橋となるので, 00 は条件を満たしません.