Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- const int mod = 1e9 + 7;
- int main() {
- ios_base::sync_with_stdio(false);
- cin.tie(0);
- cout.tie(0);
- ll n;
- int a, b, c;
- cin >> n >> a >> b >> c;
- vector<vector<vector<ll>>> dp(a + 2, vector<vector<ll>>(b + 2, vector<ll>(c + 2, 1e18)));
- dp[0][0][0] = n;
- for(int i = 0; i <= a; ++i){
- for(int j = 0; j <= b; ++j){
- for(int k = 0; k <= c; ++k){
- dp[i + 1][j][k] = min(dp[i + 1][j][k], dp[i][j][k] / 2);
- dp[i][j + 1][k] = min(dp[i][j + 1][k], (dp[i][j][k] + 1) / 2);
- dp[i][j][k + 1] = min(dp[i][j][k + 1], (dp[i][j][k] - 1) / 2);
- }
- }
- }
- cout << dp[a][b][c] << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement