Submission #133863

#TimeUsernameProblemLanguageResultExecution timeMemory
133863arthurconmyWombats (IOI13_wombats)C++14
0 / 100
235 ms16632 KiB
#include <bits/stdc++.h> #ifndef ARTHUR_LOCAL #include "wombats.h" #endif using namespace std; const int INF = 1000000000; int r=-1; int c=-1; int H[5000][200]; int V[5000][200]; int dis[401][401]; void init(int r_raw, int c_raw, int H_raw[5000][200], int V_raw[5000][200]) { r=r_raw; c=c_raw; for(int i=0; i<5000; i++) { for(int j=0; j<200; j++) { H[i][j]=H_raw[i][j]; V[i][j]=V_raw[i][j]; } } for(int i=0; i<=400; i++) { for(int j=0; j<=400; j++) { dis[i][j]=INF; } } // pre-calculate all the answers // Floyd-Warshall on a directed graph for(int i=0; i<=400; i++) { int row=int(i/c); int col=i%c; if(row>=r) break; // << "RC: " << row << " " << col << endl; if(row < r-1) { dis[i][i+c] = V[row][col]; // cout << i << " " << i+c << " " << V[row][col] << " V" << endl; } if(col < c-1) { dis[i][i+1] = H[row][col]; dis[i+1][i] = H[row][col]; // cout << i << " " << i+1 << " " << H[row][col] << " H" << endl; } } for(int i=0; i<=400; i++) { for(int j=0; j<=400; j++) { for(int k=0; k<=400; k++) { if(max({i,j,k}) < r*c) dis[i][j] = min(dis[i][j], dis[i][k]+dis[k][j]); } } } } void changeH(int p, int q, int w) { return; } void changeV(int p, int q, int w) { return; } int escape(int v1, int v2) { return dis[v1][(r-1)*c + 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;
      ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...