857 | 2022. 01. 21 09:52:56 | kicsiboglar | Dinamit | cpp11 | Elfogadva 50/50 | 104ms | 2888 KiB |
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
#include <cmath>
#define ll long long
using namespace std;
ll n, m, i, j, k, l, p, o;
int main()
{
cin >> n >> m >> k;
vector <vector<ll> > terkep(n+1, vector<ll>(m+1, INT_MAX));
for (i = 1; i <= n; ++ i)
{
for (j = 1; j <= m; ++j) cin >> terkep[i][j];
}
vector <vector<vector<ll> > > mini(n + 1, vector<vector<ll> >(m + 1, vector<ll>(k + 1, INT_MAX)));
ll actut = 0;
mini[1][0][0] = 0;
for (i = 1; i <= n; ++i)
{
for (j = 1; j <= m; ++j)
{
for (o = 0; o <= k; ++o)
{
for (p = 0; p <= k - o; ++p)
{
actut = min(mini[i - 1][j][o] + terkep[i][j] / pow(2, p), mini[i][j - 1][o] + terkep[i][j] / pow(2, p));
mini[i][j][o + p] = min(mini[i][j][o + p], actut);
}
}
}
}
cout << mini[n][m][k];
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 2ms | 1744 KiB | |||
2 | Elfogadva | 0/0 | 92ms | 2760 KiB | |||
3 | Elfogadva | 2/2 | 2ms | 1960 KiB | |||
4 | Elfogadva | 2/2 | 2ms | 1972 KiB | |||
5 | Elfogadva | 3/3 | 2ms | 1988 KiB | |||
6 | Elfogadva | 3/3 | 2ms | 2000 KiB | |||
7 | Elfogadva | 2/2 | 92ms | 2796 KiB | |||
8 | Elfogadva | 3/3 | 103ms | 2768 KiB | |||
9 | Elfogadva | 2/2 | 10ms | 1980 KiB | |||
10 | Elfogadva | 2/2 | 8ms | 1984 KiB | |||
11 | Elfogadva | 3/3 | 7ms | 1984 KiB | |||
12 | Elfogadva | 3/3 | 7ms | 1988 KiB | |||
13 | Elfogadva | 2/2 | 24ms | 2244 KiB | |||
14 | Elfogadva | 3/3 | 24ms | 2248 KiB | |||
15 | Elfogadva | 2/2 | 92ms | 2808 KiB | |||
16 | Elfogadva | 3/3 | 100ms | 2820 KiB | |||
17 | Elfogadva | 2/2 | 93ms | 2828 KiB | |||
18 | Elfogadva | 3/3 | 93ms | 2840 KiB | |||
19 | Elfogadva | 2/2 | 90ms | 2852 KiB | |||
20 | Elfogadva | 3/3 | 93ms | 2864 KiB | |||
21 | Elfogadva | 2/2 | 104ms | 2876 KiB | |||
22 | Elfogadva | 3/3 | 93ms | 2888 KiB |