제출 #1269579

#제출 시각아이디문제언어결과실행 시간메모리
1269579biankPacking Biscuits (IOI20_biscuits)C++20
0 / 100
1173 ms1771992 KiB
#include "biscuits.h" #include <bits/stdc++.h> using namespace std; #define forsn(i, s, n) for (int i = int(s); i < int(n); i++) #define forn(i, n) forsn(i, 0, n) #define dforsn(i, s, n) for (int i = int(n) - 1; i >= int(s); i--) #define dforn(i, n) dforsn(i, 0, n) #define all(x) begin(x), end(x) #define sz(x) int(x.size()) #define pb push_back #define eb emplace_back using ll = long long; ll count_tastiness(ll x, vector<ll> a) { forn(i, sz(a)) if (a[i] - x >= 2) { ll extra = (a[i] - x) / 2; assert(extra >= 1); a[i] -= 2 * extra; if (i + 1 == sz(a)) a.pb(0LL); a[i + 1] += extra; } vector<vector<ll>> dp(sz(a) + 1, vector<ll>(2 * x + 2, 0)); dp[sz(a)] = vector<ll>(2 * x + 2, 1); dforn(i, sz(a)) forn(j, 2 * x + 2) { dp[i][j] = dp[i + 1][(j + a[i]) / 2]; if (j + a[i] >= x) dp[i][j] += dp[i + 1][(j + a[i] - x) / 2]; } return dp[0][0]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...