問題一覧 > 通常問題

No.2805 Go to School

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 101
作問者 : 黒狗さん。 / テスター : hirayuu_yc highlighter Magentor penguin8331 keisuke6 silv723 Yoyoyo8128 zeta7532 fact493
0 ProblemId : 10989 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-07-12 20:53:13

問題文

kuroinu君は家から学校に行こうとしています。

地点が NN 個あり、それぞれに 1,2N1,2\dots N と番号が振られています。

また、地点と地点を繋ぐ道が MM 本あり、道 i(1iM)i(1\leq i\leq M) は地点 aia_i と地点 bib_i双方向にそれぞれ tit_i 分かけて移動することができます。ここで、同じ地点どうしを結ぶ道がある可能性があること、同じ地点のペアに複数の道がある可能性があることに注意してください。

地点 11 にkuroinu君の家が、地点 NN に学校があります。

はじめ、kuroinu君は地点 11 にいます。

kuroinu君は、道を通って地点を移動すること、今いる地点に任意の時間とどまることができます。

SS 分後から E+0.01E+0.01 分間、kuroinuくんはお腹を痛くしてしまうため、その間にトイレに用を済ませに行く必要があります。

トイレは LL 個あり、地点 Tj(1jL)T_j(1\leq j\leq L) にあります。ただし、TL=NT_L=N です。また、トイレで用を済ますには 11 分かかります。

つまり、SS 分後から S+E0.99S+E-0.99 分後の間にいずれかのトイレがある地点に到着し、そこに 11 分以上とどまる必要があります。

用を済ませたうえで学校にたどり着くのに最小で何分かかるかを求めてください。この問題の制約下で、この値は存在するなら整数であることが証明できます。

ただし、トイレに間に合わないもしくは学校までたどりつけない場合は-1を出力してください。

入力

N   M   L   S   EN~~~M~~~L~~~S~~~E
a1   b1   t1a_1~~~b_1~~~t_1
a2   b2   t2a_2~~~b_2~~~t_2
\vdots
aM   bM   tMa_M~~~b_M~~~t_M
T1   T2      TLT_1~~~T_2~~~\dots~~~T_L

制約

  • 2N2×1052\leq N\leq 2\times10^5
  • 1M2×1051\leq M\leq 2\times10^5
  • 1LN1\leq L\leq N
  • 1S,E1091\leq S,E \leq 10^9
  • 1ai,biN1\leq a_i,b_i\leq N
  • 1ti109(1iM)1\leq t_i\leq 10^9(1\leq i\leq M)
  • 1T1<T2<<TL=N1\leq T_1 \lt T_2 \lt \dots \lt T_L= N
  • 入力はすべて整数

出力

答えを 11 行に出力せよ。

また、最後に改行すること。

サンプル

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

地点 11 から地点 33 まで行き、SS 分になるまで待った後トイレで用を済ませ、地点 55 に行くのが最適です。

サンプル2
入力
4 4 4 5 3
1 2 2
1 3 3
1 4 4
2 3 1
1 2 3 4
出力
6

お腹が痛くなる前に学校に到着することが可能ですがトイレを済ませてからという条件があるので、学校である地点 44 のトイレを使用します。

サンプル3
入力
6 6 2 4 5
1 3 4
2 3 2
6 4 2
3 4 3
1 2 1
1 5 3
5 6
出力
9

地点 66 まで行き、地点 66 のトイレで用を済ませます。

サンプル4
入力
4 3 1 3 4
1 3 2 
2 3 2
1 3 1
4
出力
-1

そもそも学校までたどり着くことができません。

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