Submission #428641

#TimeUsernameProblemLanguageResultExecution timeMemory
428641egekabasPacking Biscuits (IOI20_biscuits)C++14
0 / 100
1090 ms222460 KiB
#include "biscuits.h" #include <bits/stdc++.h> #define all(x) (x).begin(), (x).end() #define ff first #define ss second #define pb push_back #define mp make_pair using namespace std; typedef long long ll; typedef unsigned long long ull; typedef long double ld; typedef pair<ll, ll> pll; typedef pair<ull, ull> pull; typedef pair<int, int> pii; typedef pair<ld, ld> pld; long long count_tastiness(long long x, std::vector<long long> a) { ll n = a.size(); vector<vector<ll>> dp(n+1, vector<ll>(x+1)); for(ll i = 0; i < n-1; ++i) if(a[i] >= x){ a[i+1] += (a[i]-x)/2; a[i] = x; } dp[0][0] = 1; for(ll i = 0; i < n-1; ++i) for(ll j = 0; j <= x; ++j){ ll curval = a[i]+j; dp[i+1][curval/2] += dp[i][j]; if(curval >= x) dp[i+1][(curval-x)/2] += dp[i][j]; } ll ans = 0; for(ll j = 0; j <= x; ++j){ ans += dp[n-1][j]*((a[n-1]+j)/x+1); } return ans; }
#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...