結果
問題 |
No.409 ダイエット
|
ユーザー |
|
提出日時 | 2019-11-12 04:15:45 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.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; }