No.2532 Want Play More
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 86
作問者 :
hirayuu_yc
/ テスター :
👑
AngrySadEight
タグ : / 解いたユーザー数 86
作問者 :

問題文最終更新日: 2023-11-04 06:15:24
問題文
頂点の木があり、頂点には と番号が振られています。
番目の辺は頂点 と をつないでいます。
HalcとSappはこの木と駒を使ってゲームをします。
進行は以下の通りです。
- はじめ、頂点 に駒がある。
- HalcとSappが交互に駒を隣の頂点へ動かす。複数の行き先がある場合はどこに行ってもよい。
- 一回通った頂点には二度と立ち入ることができない。
- 動けなくなったらゲーム終了。
どちらかが駒を動かすのを ターンと数えます。
Halcはゲームが終了するまでのターン数を最大化、Sappは最小化しようとしています。
Halcが先手、後手の場合それぞれにおいて、両者が最適に行動した時のゲームが終了するまでのターン数を出力してください。
入力
- 与えられるグラフは木である
- 入力はすべて整数
出力
2行出力してください。
1行目にはHalcが先手の場合、2行目にはHalcが後手の場合のターン数を出力してください。
サンプル
サンプル1
入力
6 1 2 2 3 3 4 3 5 5 6
出力
4 3
Halcが先手の場合、例えば以下のような進行が考えられます。
- Halcが駒を頂点 に動かす
- Sappが駒を頂点 に動かす
- Halcが駒を頂点 に動かす
- Sappが駒を頂点 に動かす
- 駒を動かせないのでゲームが終了する
実は、これは両者が最善に動いており、ターン数は です。
ちなみに、Halcが後手の場合は ターンで終わります。
サンプル2
入力
4 1 2 1 3 1 4
出力
1 1
最善の行動が複数ある場合もあります。
サンプル3
入力
1
出力
0 0
頂点が一つの場合もあります。この場合、辺の情報は与えられません。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。