This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "wombats.h"
#include <bits/stdc++.h>
using namespace std;
#define FOR(i, a, b) for (int i = (a); i <= (b); i++)
#define REP(n) FOR(O, 1, (n))
#define f first
#define s second
#define pb push_back
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef vector<pii> vii;
typedef long long ll;
typedef vector<ll> vl;
const int MAXN = 100100;
const ll INF = 1e9;
int r, c;
int h[5000][200], v[5000][200];
int dp[310][5100][310];
void calcDists () {
FOR(i, 0, c-1) {
// cout << " i = "<< i<< endl;
FOR(col, 0, c-1) dp[i][r-1][col] = INF;
//cout << " --" << endl;
dp[i][r-1][i] = 0;
for (int row = r-1; row >= 0; row--) {
// cout <<" row = " << row << endl;
if (row != r-1) {
FOR(col, 0, c-1) dp[i][row][col] = dp[i][row+1][col] + v[row][col];
}
//cout << " -" << endl;
FOR(col, 1, c-1) dp[i][row][col] = min(dp[i][row][col], dp[i][row][col-1] + h[row][col-1]);
//cout << " sfsadfa" << endl;
for (int col = c-2; col >= 0; col--) {
//cout << " col = " << col << endl;
dp[i][row][col] = min(dp[i][row][col], dp[i][row][col+1] + h[row][col]);
//cout << " ss" << endl;
}
//cout << " ------" << endl;
}
}
}
void init(int R, int C, int H[5000][200], int V[5000][200]) {
r = R;
c = C;
FOR(i, 0, r-1) FOR(j, 0, c-2)
h[i][j] = H[i][j];
FOR(i, 0, r-2) FOR(j, 0, c-1)
v[i][j] = V[i][j];
//cout<< " h" << endl;
calcDists();
// cout << " ii" << endl;
}
void changeH(int P, int Q, int W) {
h[P][Q] = W;
calcDists();
}
void changeV(int P, int Q, int W) {
v[P][Q] = W;
calcDists();
}
int escape(int V1, int V2) {
return dp[V2][0][V1];
}
Compilation message (stderr)
grader.c: In function 'int main()':
grader.c:15:6: warning: variable 'res' set but not used [-Wunused-but-set-variable]
15 | int res;
| ^~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |