Submission #64411

#TimeUsernameProblemLanguageResultExecution timeMemory
64411theknife2001Wombats (IOI13_wombats)C++17
12 / 100
16068 ms19232 KiB
#include "wombats.h" #include <bits/stdc++.h> #define ii pair< int , int> #define se second #define fi first using namespace std; const int N=5e3+55; int sum[N][2][2]; int v[N][2]; int h[N][2]; int n,m; map < ii , int > mp; vector < ii > vec[N]; void init(int R, int C, int H[][200], int V[][200]) { n=R; m=C; int cnt=0; for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { v[i][j]=V[i][j]; h[i][j]=H[i][j]; if(j+1!=m) { vec[cnt].push_back({cnt+1,h[i][j]}); vec[cnt+1].push_back({cnt,h[i][j]}); } if(i+1!=n) vec[cnt].push_back({cnt+m,v[i][j]}); mp[{i,j}]=cnt; cnt++; } } } void changeH(int P, int Q, int W) { h[P][Q]=W; } void changeV(int P, int Q, int W) { v[P][Q]=W; } priority_queue < ii , vector < ii > , greater < ii > > pq; int dist[5000000]; int escape(int V1, int V2) { pq.push({0,V1}); for(int i=0;i<50000;i++) dist[i]=1e9; int u,c; dist[V1]=0; while(pq.size()) { u=pq.top().se; c=pq.top().fi; pq.pop(); if(dist[u]<c) continue ; int v,d; for(int i=0;i<vec[u].size();i++) { v=vec[u][i].fi; d=vec[u][i].se; if(d+c<dist[v]) { dist[v]=d+c; pq.push({c+d,v}); } } } return dist[mp[{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:69:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(int i=0;i<vec[u].size();i++)
                     ~^~~~~~~~~~~~~~
#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...