No.281 門松と魔法(1)

レベル : / 実行時間制限 : 1ケース 1.000秒 / メモリ制限 : 128 MB / 通常問題
タグ : / 解いたユーザー数 62
作問者 : 紙ぺーぱー紙ぺーぱー

2 ProblemId : 661 / 出題時の順位表

問題文

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

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

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

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

入力

$d$
$H_1$
$H_2$
$H_3$

魔法を使ったときに変化させる高さ$d (0 \le d \le 10^{9})$が1行で与えられる。
続く$3$行に$i$番目の竹の高さ$H_i (0 \le H_i \le 10^{9})$がそれぞれ与えられる。

出力

魔法を最低何回唱えることで条件を満たすことが可能か答えよ。不可能な場合は-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

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

提出ページヘ