238712026-01-31 10:34:52sarminDinamitcpp17Elfogadva 50/507ms1056 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
// const ll MOD = 1e9+7;

#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define int long long

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n, m, K; cin >> n >> m >> K;
    vector<vector<int>> a(n+1, vector<int>(m+1));
    vector<vector<vector<int>>> dp(n+1, vector<vector<int>>(m+1, vector<int>(K+1, INT_MAX)));
    for (int i = 1; i <= n; i++) {
    	for (int j = 1; j <= m; j++) {
    		cin >> a[i][j];
    	}
    }
    
    
    for (int k = 0; k <= K; k++) dp[0][1][k] = 0;
    for (int i = 1; i <= n; i++) {
    	for (int j = 1; j <= m; j++) {
    		for (int k = 0; k <= K; k++) {
    			for (int l = 0; l <= k; l++) {
                    int utide = min(dp[i][j-1][k-l], dp[i-1][j][k-l]);
    				dp[i][j][k] = min(dp[i][j][k], utide + (a[i][j]>>l));
    			}
    		}
    	}
    }
    
    cout << dp[n][m][K] << "\n";

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/06ms1004 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms528 KiB
7Elfogadva2/27ms820 KiB
8Elfogadva3/36ms1048 KiB
9Elfogadva2/21ms508 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva3/31ms560 KiB
12Elfogadva3/31ms396 KiB
13Elfogadva2/22ms564 KiB
14Elfogadva3/32ms580 KiB
15Elfogadva2/27ms1048 KiB
16Elfogadva3/37ms820 KiB
17Elfogadva2/26ms820 KiB
18Elfogadva3/37ms820 KiB
19Elfogadva2/27ms820 KiB
20Elfogadva3/36ms1040 KiB
21Elfogadva2/26ms1048 KiB
22Elfogadva3/37ms1056 KiB