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;
typedef pair<int,int> ii;
typedef pair<int,ii> iii;
priority_queue <iii> Q;
int h[5000][200],v[5000][200];
int n,m;
void init(int R, int C, int H[5000][200], int V[5000][200]) {
n = R;
m = C;
for(int i = 0; i< 5000; i++)
for(int j = 0; j < 200; j++)
{
h[i][j] = H[i][j];
v[i][j] = V[i][j];
}
}
void changeH(int P, int Q, int W) {
/* ... */
}
void changeV(int P, int Q, int W) {
/* ... */
}
int escape(int V1, int V2) {
int dist[5010][110];
for(int i = 0; i < 5010; i++)
for(int j = 0;j < 110; j++)
dist[i][j] = 1e9;
dist[0][V1] = 0;
Q.push(iii(0,ii(0,V1)));
while(!Q.empty())
{
iii pr = Q.top();
Q.pop();
int d = -pr.first;
int x = pr.second.first;
int y = pr.second.second;
if(x + 1 < n)
{
if(dist[x][y] + v[x][y] < dist[x+1][y])
{
dist[x+1][y] = dist[x][y] + v[x][y];
Q.push(iii(-dist[x+1][y],ii(x+1,y)));
}
}
if(y + 1 < m)
{
if(dist[x][y] + h[x][y] < dist[x][y+1])
{
dist[x][y+1] = dist[x][y] + h[x][y];
Q.push(iii(-dist[x][y+1],ii(x,y+1)));
}
}
if(y - 1 >= 0)
{
if(dist[x][y] + h[x][y-1] < dist[x][y-1])
{
dist[x][y-1] = dist[x][y] + h[x][y-1];
Q.push(iii(-dist[x][y-1],ii(x,y-1)));
}
}
}
return dist[n-1][V2];
}
Compilation message (stderr)
grader.c: In function 'int main()':
grader.c:15:6: warning: variable 'res' set but not used [-Wunused-but-set-variable]
int res;
^
wombats.cpp: In function 'int escape(int, int)':
wombats.cpp:44:11: warning: unused variable 'd' [-Wunused-variable]
int d = -pr.first;
^
# | 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... |