atcoder#ABC226C. [ABC226C] Martial artist

[ABC226C] Martial artist

配点 : 300300

問題文

高橋君は武術家です。 武術家の覚えられる技は NN 個あり、技 11, 22, \ldots, NN と名前がついています。 1iN1 \leq i \leq N について、技 ii を習得するには時間 TiT_i の修練が必要で、 さらに、修練の開始時点で技 Ai,1A_{i,1}, Ai,2A_{i,2}, \ldots, Ai,KiA_{i,K_i} をすでに習得している必要があります。 ここで、1jKi1 \leq j \leq K_i について、Ai,j<iA_{i,j} < i であることが保証されます。

高橋君は時刻 00 の時点で技を 11 つも覚えていません。 高橋君は同時に 11 つの技に対する修練しかできず、また、一度始めた修練を途中でやめることもできません。 高橋君が技 NN を習得するのに必要な時間の最小値を求めてください。

制約

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 1Ti1091 \leq T_i \leq 10^9
  • 0Ki<i0 \leq K_i < i
  • 1Ai,j<i1 \leq A_{i,j} < i
  • i=1NKi2×105\sum_{i=1}^N K_i \leq 2\times 10^5
  • Ai,1A_{i,1}, Ai,2A_{i,2}, \ldots, Ai,KiA_{i,K_i} はすべて異なる。
  • 入力は全て整数である。

入力

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

NN

T1T_1 K1K_1 A1,1A_{1,1} A1,2A_{1,2} \ldots A1,K1A_{1,K_1}

T2T_2 K2K_2 A2,1A_{2,1} A2,2A_{2,2} \ldots A2,K2A_{2,K_2}

\vdots

TNT_N KNK_N AN,1A_{N,1} AN,2A_{N,2} \ldots AN,KNA_{N,K_N}

出力

NN を習得するのに必要な時間の最小値を出力せよ。

3
3 0
5 1 1
7 1 1
10

例えば高橋君は次のように行動することができます。

  • 高橋君は時刻 00 に技 11 の修練を開始し、時刻 33 に技 11 を習得します。
  • その後、時刻 33 に技 33 の修練を開始し、時刻 1010 に技 33 を習得します。

このときが最短で、高橋君が技 33 を習得するのに必要な時間は 3+7=103+7=10 となります。 技 33 の習得のためには、技 22 を習得する必要はありません。

5
1000000000 0
1000000000 0
1000000000 0
1000000000 0
1000000000 4 1 2 3 4
5000000000

答えが 3232 bit 整数に収まらないことがある事に注意してください。