156242025-02-21 11:04:06GervidDinamitcpp17Runtime error 0/501ms564 KiB
#include <iostream>
#include <vector>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <limits.h>
#include <algorithm>
#include <math.h>
#include <array>
#include <fstream>

using namespace std;
using ll = long long;

signed main()
{
	iostream::sync_with_stdio(0);
	cin.tie(0);

	fstream cin("be2.txt");

	ll n, m, k, i, j, l, l2;
	cin >> n >> m >> k;

	vector<vector<ll>> grid(n, vector<ll>(m));
	vector<vector<vector<ll>>> dp(n, vector<vector<ll>>(m, vector<ll>(k+1, LLONG_MAX)));
	for (i = 0; i < n; i++)
		for (j = 0; j < m; j++)
			cin >> grid[i][j];

	for (i = 0; i <= k; i++) dp[0][0][i] = grid[0][0] / (1LL << min(62LL, i));

	for (i = 0; i < n; i++)
	{
		for (j = 0; j < m; j++)
		{
			for (l = 0; l <= k; l++)
			{
				for (l2 = 0; l2 <= l; l2++)
				{
					if ((i != 0) && (j == 0 || dp[i - 1][j][l] < dp[i][j - 1][l]))
					{
						if (dp[i][j][l] > grid[i][j] / (1LL << min(62LL, l2)) + dp[i - 1][j][l - l2])
						{
							dp[i][j][l] = grid[i][j] / (1LL << min(62LL, l2)) + dp[i - 1][j][l - l2];
						}
					}
					if ((j != 0) && (i == 0 || dp[i][j - 1][l] <= dp[i - 1][j][l]))
					{
						if (dp[i][j][l] > grid[i][j] / (1LL << min(62LL, l2)) + dp[i][j - 1][l - l2])
						{
							dp[i][j][l] = grid[i][j] / (1LL << min(62LL, l2)) + dp[i][j - 1][l - l2];
						}
					}
				}
			}
		}
	}
	cout << dp[n-1][m-1][k];
}
SubtaskSumTestVerdictTimeMemory
base0/50
1Runtime error0/01ms316 KiB
2Runtime error0/01ms316 KiB
3Runtime error0/21ms316 KiB
4Runtime error0/21ms316 KiB
5Runtime error0/31ms316 KiB
6Runtime error0/31ms316 KiB
7Runtime error0/21ms316 KiB
8Runtime error0/31ms564 KiB
9Runtime error0/21ms508 KiB
10Runtime error0/21ms316 KiB
11Runtime error0/31ms316 KiB
12Runtime error0/31ms316 KiB
13Runtime error0/21ms512 KiB
14Runtime error0/31ms316 KiB
15Runtime error0/21ms316 KiB
16Runtime error0/31ms316 KiB
17Runtime error0/21ms328 KiB
18Runtime error0/31ms316 KiB
19Runtime error0/21ms416 KiB
20Runtime error0/31ms564 KiB
21Runtime error0/21ms316 KiB
22Runtime error0/31ms500 KiB