1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 新・Bランクレベルアップメニュー(言語選択)
  4. 問題一覧
  5. 【シミュレーション 3】燃費

新・Bランクレベルアップメニューのサムネイル
【シミュレーション 3】燃費(paizaランク B 相当)

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

問題

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

一般的な車では、車が止まった状態から発進する際は燃費がよくないことが知られています。
このことを知った paiza 君は発進時とそれ以外での燃費を分けて考えることで実際の燃費を求めたいと考えました。

具体的には、発進から X m 走るまでは 1 m あたり燃料が F_1 ml, 発進から X m 走った後から止まるまでは 1 m あたり燃料が F_2 ml かかります。
途中、出発地点から s_1(m), ..., s_N(m) の地点で一時停止をしながら全長 L m を走ると、全体を通して必要な燃料は何 ml になるでしょうか?

なお、停車中の燃料の消費や燃料切れについては考えないものとします。

入力される値

X
F_1 F_2
L N
s_1 ... s_N


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

途中 s_1(m), ..., s_N(m) の地点で一時停止をしながら全長 L m を走ると、全体を通して必要な燃料(ml) を出力してください。

条件

・1 ≦ X ≦ 1000
・1 ≦ F_2 ≦ F_1 ≦ 100
・1 ≦ N ≦ 1000
・0 < s_1
・s_i < s_{i+1}(1 ≦ i < N)
・s_N ≦ L ≦ 1,000,000,000

入力例1

10
7 3
100 1
50

出力例1

380

入力例2

50
5 4
100 2
30 60

出力例2

500

問題一覧へ戻る

ページの先頭へ戻る