Submission #607635

#TimeUsernameProblemLanguageResultExecution timeMemory
607635skittles1412Packing Biscuits (IOI20_biscuits)C++17
21 / 100
1090 ms63288 KiB
#include "bits/extc++.h" using namespace std; template <typename T> void dbgh(const T& t) { cerr << t << endl; } template <typename T, typename... U> void dbgh(const T& t, const U&... u) { cerr << t << " | "; dbgh(u...); } #ifdef DEBUG #define dbg(...) \ cerr << "L" << __LINE__ << " [" << #__VA_ARGS__ << "]: "; \ dbgh(__VA_ARGS__); #else #define dbg(...) #define cerr \ if (false) \ cerr #endif using ll = long long; #define endl "\n" #define long int64_t #define sz(x) int((x).size()) const int maxn = 300; long k, arr[maxn]; map<long, long> memo[maxn]; long dp(int ind, long prev) { if (ind == maxn) { return 1; } auto it = memo[ind].find(prev); if (it != memo[ind].end()) { return it->second; } long cur = arr[ind] + prev; long ans = dp(ind + 1, cur / 2); if (cur >= k) { ans += dp(ind + 1, (cur - k) / 2); } return memo[ind][prev] = ans; } ll count_tastiness(ll _k, vector<ll> _arr) { k = _k; memset(arr, 0, sizeof(arr)); copy(begin(_arr), end(_arr), arr); for (auto& a : memo) { a.clear(); } 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...