問題一覧 > 通常問題

No.281 門松と魔法(1)

レベル : / 実行時間制限 : 1ケース 1.000秒 / メモリ制限 : 128 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 105
作問者 : 紙ぺーぱー
2 ProblemId : 661 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2016-05-24 14:29:50

問題文

kamipeipaa君の家の庭には1列に並んだ3本の竹があります。
kamipeipaa君は
・3本の竹全ての高さが互いに異なり、真ん中の竹の高さが一番高いあるいは低い
という条件を満たすようにしたいと考えています。
kamipeipaa君は1つの竹を選び、"その竹が高さhならばmax(0,hd)にする"という魔法を繰り返し使うことで、この条件を満たすようにしたいと考えています。

この条件を満たすように魔法を使うとき、最低何回使う必要があるかkamipeipaa君に教えてあげてください。

なお、高さ0の竹も竹とみなされます。

竹は並び替えずに、入力の順番のままであるとする。

入力

d
H1
H2
H3

魔法を使ったときに変化させる高さd(0d109)が1行で与えられる。
続く3行にi番目の竹の高さHi(0Hi109)がそれぞれ与えられる。

出力

魔法を最低何回唱えることで条件を満たすことが可能か答えよ。不可能な場合は-1を出力せよ。

サンプル

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

真ん中の竹に1度魔法を唱えることで。条件を満たすことができます。

サンプル2
入力
411
4
1
5
出力
0

魔法を使う必要がないこともあります。

サンプル3
入力
2
3
10
12
出力
2

サンプル4
入力
1
0
0
0
出力
-1

魔法を使ってもどうしようもないこともあります。

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