1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 木のメニュー(言語選択)
  4. 問題一覧 Objective-C編
  5. 三角形を作る Objective-C編

木のメニューのサムネイル
三角形を作る Objective-C編(paizaランク A 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

paiza 君と erik 君は、1 〜 N 番の頂点からなる、任意の連続する 3 頂点が一直線上に並んでいない木が書かれた紙を使って、次のような遊びを思いつきました。

木の中で連続して繋がっている 3 つの頂点の端の 2 つの頂点を結び、元々木に含まれる 2 辺と合わせて三角形を作る。
交互に三角形を作っていき、先に三角形を作れなくなった方の負け!


2 人は paiza 君が先攻、 erik 君が後攻でこのゲームを遊ぶことにしました。
用意した木についての情報が与えられるので、両者が最適な戦略を取ったときどちらが勝利するかを判定してください。

例として、入力例 1 の表す以下の木でゲームを行った場合、paiza 君と erik 君は赤い線と青い線を引いていき、先に線が引けなくなるのは erik 君なので、勝者は paiza 君となります。


入力される値

N
a_1 b_1
...
a_{N-1} b_{N-1}


・1 行目には、頂点の数 N が与えられます。
・続く N-1 行では、各辺の両端の頂点 a_i , b_i が与えられます。(1 ≦ i ≦ N-1)


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

・勝者の名前(paiza or erik) を 1 行で出力してください。
・出力の末尾には改行を出力してください。

条件

すべてのテストケースにおいて、以下の条件をみたします。

・ 1 ≦ N ≦ 100
・ 1 ≦ a_i , b_i ≦ N (1 ≦ i < N)

入力例1

7
1 3
1 5
2 3
4 3
6 5
7 1

出力例1

paiza

問題一覧へ戻る

ページの先頭へ戻る