結果
| 問題 | No.409 ダイエット |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-11-12 04:15:45 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.89.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 612 bytes |
| 記録 | |
| コンパイル時間 | 1,956 ms |
| コンパイル使用メモリ | 192,596 KB |
| 最終ジャッジ日時 | 2025-01-08 03:53:12 |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 66 WA * 26 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
int N, A, B, W;
int D[1000000];
int64_t num, sol;
int Wa, Wb, Wc;
int X, X2;
int rec(int Wa, int Wb, int Wc, int X, int X2, int num) {
if (num != N) {
return rec(
min(min(Wb + D[num], Wc + D[num]), Wa + D[num]), Wa - A + B,
Wb - A + X * B < Wc - A + X2 * B ? Wb - A + X * B : Wc - A + X2 * B, 2,
Wb - A + X * B < Wc - A + X2 * B ? X + 1 : X2 + 1, num + 1);
}
return sol = min(min(Wa, Wb), Wc);
}
int main() {
cin >> N >> A >> B >> W;
for (int i = 0; i < N; i++) cin >> D[i];
rec(W, W, W, 1, 1, 0);
cout << sol << endl;
}