問題一覧 >
通常問題
No.2288 Somen Sliders
レベル :
/ 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ :
/
解いたユーザー数 8
作問者 :
みここ
/ テスター :
cureskol
👑
potato167
問題文最終更新日: 2023-04-28 21:20:13
問題文
0,1,⋯,N,N+1 の N+2 頂点をもつ有向グラフ上の、端点以外頂点素な 0(N+1) パス集合 P={P1,⋯,PX},Q={Q1,⋯,QY} が与えられます。1≤i≤X に対して、Pi に含まれる辺の数は Ki 本で、j 番目の頂点(0 番目の頂点から始まるとします)は ui,j です。また、1≤i≤Y に対して、Qi に含まれる辺の数は Li 本で、j 番目の頂点(0 番目の頂点から始まるとします)は vi,j です。ここで、P のパスと Q のパスは共通の辺をもたないものとします。ただし、P のパスと Q のパスの間に平行辺が存在することはあり得ます(すなわち、ある 2 頂点 u,v に対して、u から v への辺が P と Q のどちらにも含まれていることはあり得ますが、これらは別の辺として扱います)。更に、P,Q のすべてのパスの長さは 2 以上であるものとします。
これらの P,Q から、あなたは以下を満たすパス集合 R を構成したいと思いました。
- R は端点以外頂点素な 0(N+1) パス集合。
- 各 R∈R に対して R 上のある頂点 u が存在し,R の u 以前の辺は E(P) に含まれ,u 以降の辺は E(Q) に含まれる。
- 各 P∈P に対して,P の始辺は E(R) に含まれる。
- 各 Q∈Q に対して,Q の終辺は E(R) に含まれる。
ただし、パス集合 X に対して、E(X) は X のどれかのパスに含まれる辺全体の集合とします。
このような R が存在するか判定し、存在するならば ∣E(P)∩E(R)∣ が最大となるときの値を求めてください。
端点以外頂点素な 0(N+1) パス集合とは(クリックすると説明が出ます)
パス集合 X が以下を満たすとき,X は端点以外頂点素な 0(N+1) パス集合であるという。
- すべての P∈X の始点が 0 かつ終点が N+1。
- すべての P∈X が閉路をもたない。
- すべての相異なる P,Q∈X が 0,N+1 以外の共通頂点をもたない。
入力
N X Y
K1
u1,0 u1,1 ⋯ u1,K1
⋮
KX
uX,0 uX,1 ⋯ uX,KX
L1
v1,0 v1,1 ⋯ v1,L1
⋮
LY
vY,0 vY,1 ⋯ vY,LY
- 入力される値はすべて整数
- 1≤N≤105
- 1≤X,Y≤N
- 2≤Ki≤N+1
- ui,0=0 かつ ui,Ki=N+1
- 1≤j<Ki に対して、1≤ui,j≤N
- 1≤j<Ki,1≤j′<Ki′ に対して、i=i′ または j=j′ ならば ui,j=ui′,j′
- 2≤Li≤N+1
- vi,0=0 かつ vi,Li=N+1
- 1≤j<Li に対して、1≤vi,j≤N
- 1≤j<Li,1≤j′<Li′ に対して、i=i′ または j=j′ ならば vi,j=vi′,j′
出力
条件を満たすパス集合 R が存在するとき、∣E(P)∩E(R)∣ の最大値を出力してください。そうでないとき、−1 を出力してください。
サンプル
サンプル1
入力
4 2 2
3
0 3 1 5
3
0 2 4 5
3
0 2 1 5
3
0 3 4 5
出力
4
条件を満たすパス集合としては R1={0→P3→P1→Q5,0→P2→P4→Q5},R2={0→P3→Q4→Q5,0→P2→Q1→Q5} があり、
∣P∩R1∣=4,∣P∩R2∣=2 なので答えは 4 となります。
サンプル2
入力
2 1 1
2
0 1 3
2
0 2 3
出力
2
条件を満たすパス集合は {0→P1→P3,0→Q2→Q3} となります。二つ目の条件における u は 0 または N+1 でも構わないことに注意してください。
サンプル3
入力
4 1 1
5
0 1 2 3 4 5
5
0 1 2 3 4 5
出力
4
条件を満たすパス集合には {0→P1→P2→P3→P4→Q5} や {0→P1→P2→Q3→Q4→Q5} などがあります。{0→P1→P2→P3→P4→P5} は条件を満たさないことに注意してください。
サンプル4
入力
19 3 3
4
0 1 2 3 20
8
0 4 5 6 7 8 9 10 20
4
0 11 12 13 20
6
0 14 3 15 8 16 20
5
0 17 2 9 18 20
4
0 19 12 7 20
出力
10
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。