問題一覧 > 通常問題

No.1393 Median of Walk

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 20
作問者 : chineristAC / テスター : tpyneriver
8 ProblemId : 5492 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-04-04 13:15:26

問題文

NN 個の整数からなる数列 AA の中央値をつぎのように定義します。

  • AA を昇順にソートして得られる数列を AA' とする。このとき AA'(N+1)/2(N+1)/2 番目の要素を AA の中央値とする( // は小数点以下を切り捨てる除算を表す)。

NN 頂点 MM 辺の重み付き有向グラフがあります。i (1iM)i\ (1\le i \le M) 番目の辺は頂点 uiu_i から頂点 viv_i へ向かっており、重みは wiw_i です。

頂点 ss から頂点 tt への 歩道 p=(v0=s,e1,v1,e2,,vn1,en,vn=t)p=(v_0=s,e_1,v_1,e_2,\dots,v_{n-1},e_n,v_n=t) に対し、 median(p)\mathrm{median}(p) を数列 A=(we1,we2,,wen)A=(w_{e_1},w_{e_2},\dots,w_{e_n}) の中央値とします。

i=2, 3,  Ni=2,\ 3,\ \dots\ N について、頂点 11 から頂点 ii への歩道 pp に対する median(p)\mathrm{median}(p) の最小値を出力してください。歩道が存在しない場合は 1-1 を出力してください。

歩道とは?(クリックで開く) 整数列 p=(v0,e1,v1,,vn1,en,vn)p=(v_0,e_1,v_1,\dots,v_{n-1},e_n,v_n) が以下の条件を満たすとき、 pp は頂点 ss から頂点 tt への歩道であるといいます。
  • v0=s,vn=tv_0=s,v_n=t
  • eie_i は頂点 vi1v_{i-1} から頂点 viv_i へ向かう辺である
(単純)パスとは異なり、同じ頂点や同じ辺を通ってもよいことに注意してください。

入力

N MN\ M
u1 v1 wiu_1\ v_1\ w_i
\vdots
uM vM wMu_M\ v_M\ w_M

  • 2N10002 \le N \le 1000
  • 1Mmin(N(N1)2, 2500)1 \le M \le \min(\frac{N(N-1)}{2},\ 2500)
  • 1ui, viN (1iM)1 \le u_i,\ v_i \le N\ (1\le i \le M)
  • 1wi109 (1iM)1\le w_i \le 10^9\ (1\le i \le M)
  • 与えられる入力はすべて整数
  • 与えられるグラフは自己ループや多重辺をもたない

出力

N1N-1 行出力してください。

i (1iN1)i\ (1\le i \le N-1) 行目には頂点 11 から頂点 i+1i+1 への歩道 pp に対する median(p)\mathrm{median}(p) の最小値を出力して下さい。 歩道が存在しない場合は 1-1 を出力してください。

最後に改行してください。

サンプル

サンプル1
入力
4 5
1 2 3
2 3 19
3 4 11
1 4 19
2 4 15
出力
3
3
3

(わかりやすさのため、以下のサンプルの説明では歩道を頂点列で表します。)

頂点 11 から 頂点 44 への歩道は 1234,124,141→2→3→4, 1→2→4, 1→433 通りです。

たとえば 11 番目の歩道の median(p)\mathrm{median}(p)(w1,w2,w3)=(3, 19, 11)(w_1,w_2,w_3)=(3,\ 19,\ 11) の中央値である 1111 です。

ほかの歩道についても同様に median(p)\mathrm{median}(p) を求めると 3,193, 19 になるので、 33 行目にはこれらの最小値である 33 を出力します。

サンプル2
入力
8 8
1 2 10
2 3 11
3 4 5
4 5 8
5 3 2
3 6 12
6 7 19
8 5 4
出力
10
5
5
5
5
5
-1

頂点 11 から頂点 77 への歩道 123453453671→2→3→4→5→3→4→5→3→6→7median(p)\mathrm{median}(p)55 になり、 median(p)\mathrm{median}(p) がこれより小さくなる歩道は存在しないので 66 行目には 55 を出力します。

頂点 11 から頂点 88 への歩道は存在しないので 77 行目には 1-1 を出力します。

サンプル3
入力
10 20
1 2 12
2 3 81
2 4 50
3 5 98
5 6 75
6 7 15
3 8 40
3 9 75
7 10 86
1 5 11
2 9 99
8 9 12
6 9 96
1 3 93
5 9 37
5 7 17
7 8 96
1 8 49
2 7 79
4 7 82
出力
12
12
12
11
11
11
15
11
15

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。