結果

問題 No.409 ダイエット
ユーザー 0w1
提出日時 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
権限があれば一括ダウンロードができます

ソースコード

diff #

#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;
}
0