AT_KeioPC2025_h Takosan Takusan

Description

頂点に $ 1 $ から $ N $ の、辺に $ 1 $ から $ M $ の番号がついた $ N $ 頂点 $ M $ 辺の単純連結無向グラフが与えられます。辺 $ i $ は頂点 $ u_i $ と頂点 $ v_i $ を結んでおり、整数 $ A_i $ が書かれています。 いま、頂点 $ 1 $ にたこさんウインナーがいます。たこさんウインナーは足を $ 1 $ 本持っています。たこさんウインナーは以下の行動を繰り返すことで頂点 $ N $ へ向かおうと考えています。 1. 現在の頂点に接続する辺を $ 1 $ つ選ぶ。選んだ辺を辺 $ i $ とする。 2. たこさんウインナーの現在の足の本数を $ x $ 本として、 $ x \le y $ かつ $ y\ \mathrm{OR}\ A_i = A_i $ を満たすような整数 $ y $ を選ぶ。そして、足の本数を $ y $ 本に増やし辺 $ i $ を渡る。 ここで $ a\ \mathrm{OR}\ b $ は $ a $ と $ b $ のビットごとの論理和を表します。 たこさんウインナーが頂点 $ N $ に到達することが可能か判定し、可能な場合、初めて頂点 $ N $ にたどり着いたときのたこさんウインナーの足の本数として考えられる最小値と最大値を求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N\ M $ $ u_1\ v_1\ A_1 $ $ u_2\ v_2\ A_2 $ $ \vdots $ $ u_M\ v_M\ A_M $

Output Format

たこさんウインナーが初めて頂点 $ N $ にたどり着いたときのたこさんウインナーの足の本数として考えられる最小値と最大値をこの順でスペース区切りで $ 1 $ 行に出力せよ。 どのように行動しても頂点 $ N $ にたどり着くことができない場合は `-1 -1` を出力せよ。

Explanation/Hint

### Sample Explanation 1 はじめ、たこさんウィンナーは足が $ 1 $ 本の状態で、頂点 $ 1 $ にいます。例えば、以下のように移動することができます。 - 辺 $ 4 $ を選び、 $ y = 1 $ とすると足の本数が $ 1 $ 本の状態で、頂点 $ 4 $ に移動します。 このように移動すると足の本数が $ 1 $ 本の状態で頂点 $ 4 $ に移動できます。また、以下のように移動することもできます。 - 辺 $ 4 $ を選び、 $ y = 7 $ とすると足の本数が $ 7 $ 本の状態で、頂点 $ 4 $ に移動します。 このように移動すると足の本数が $ 7 $ 本の状態で頂点 $ 4 $ に移動できます。これが、頂点 $ 4 $ に着いたときの足の本数の最小値と最大値を達成する方法です。 ### Constraints - $ 2 \le N \le 2 \times 10^5 $ - $ 1 \le M \le 2 \times 10^5 $ - $ 1 \le u_i, v_i \le N $ - $ 0 \le A_i \lt 2^{30} $ - 入力で与えられるグラフは単純連結 - 入力はすべて整数