atcoder#AGC062D. [AGC062D] Walk Around Neighborhood
[AGC062D] Walk Around Neighborhood
配点 : 点
問題文
二次元平面の原点 にメモ帳を持った高橋君がいます。メモ帳には 個の偶数 が書かれています。
これから高橋君は二次元平面上で以下の行動を 回行います。
- メモ帳に書かれている偶数を つ選んで消す。選んだ偶数を としたとき、マンハッタン距離でちょうど だけ離れた点へ移動する。より正確には、現在高橋君がいる点の座標を としたとき、 を満たす点 へ移動する。
回の行動を行った後、高橋君は原点 に戻っていなければなりません。
そのように 回の行動を行うことができるか判定してください。可能な場合、 回目の行動を終えた後高橋君がいる座標を としたときの の最小値を求めてください(この値は整数になることが証明できます)。
制約
- は偶数
- 入力される値はすべて整数
入力
入力は以下の形式で標準入力から与えられます。
出力
上記のように 回の行動を行うことが不可能な場合、-1
を出力してください。可能な場合、 の最小値を整数で出力してください。
3
2 4 6
4
高橋君が 回目から 回目の行動でそれぞれ をメモ帳から消し、 $(0,0)\rightarrow (0,2) \rightarrow (-4,0) \rightarrow (0,0)$ と移動すると は になり、これが最小です。
5
2 2 2 2 6
3
高橋君が 回目から 回目の行動でそれぞれ をメモ帳から消し、 $(0,0)\rightarrow (\frac{1}{2},\frac{3}{2})\rightarrow (0,3) \rightarrow (0,-3) \rightarrow (-\frac{1}{2},-\frac{3}{2}) \rightarrow (0,0)$ と移動すると は になり、これが最小です。
高橋君は格子点以外にも移動できます。
2
2 200000
-1
高橋君は上記のように 回行動した後、原点に戻ることはできません。