Submission #1021213

#TimeUsernameProblemLanguageResultExecution timeMemory
1021213amirhoseinfar1385Wombats (IOI13_wombats)C++17
28 / 100
1041 ms16900 KiB
#include "wombats.h" #include<bits/stdc++.h> using namespace std; const int maxn=5000+10,maxm=200+10,t=200,mt=(maxn/t)+5; int n,m,inf=1e9+5; struct bakhsh{ int allr[t+5][maxm],allc[t+5][maxm],dp[maxm][maxm],ps[maxm],suf[maxm],mxr=0; void calps(int i){ for(int j=1;j<=m;j++){ ps[j]=ps[j-1]+allr[i][j-1]; } } void calc(){ for(int k=1;k<=m;k++){ calps(0); for(int j=1;j<=m;j++){ dp[k][j]=abs(ps[k]-ps[j]); } for(int i=1;i<=mxr;i++){ int mn=inf; for(int j=1;j<=m;j++){ mn=min(mn+allr[i][j-1],dp[k][j]+allc[i-1][j]); ps[j]=mn; } mn=inf; for(int j=m;j>=1;j--){ mn=min(mn+allr[i][j],dp[k][j]+allc[i-1][j]); dp[k][j]=min(ps[j],mn); } } for(int j=1;j<=m;j++){ dp[k][j]+=allc[mxr][j]; } } } void updr(int i,int j,int w){ j++; mxr=max(mxr,i); allr[i][j]=w; } void updc(int i,int j,int w){ j++; mxr=max(mxr,i); allc[i][j]=w; } }allsq[mt]; void init( int R, int C, int H[5000][200], int V[5000][200]) { n=R; m=C; for(int i=0;i<n;i++){ for(int j=0;j<m-1;j++){ allsq[i/t].updr(i%t,j,H[i][j]); } } for(int i=0;i<n-1;i++){ for(int j=0;j<m;j++){ allsq[i/t].updc(i%t,j,V[i][j]); } } for(int i=0;i<mt;i++){ allsq[i].calc(); } } void changeH( int P, int Q, int W) { allsq[P/t].updr(P%t,Q,W); allsq[P/t].calc(); } void changeV( int P, int Q, int W) { allsq[P/t].updc(P%t,Q,W); allsq[P/t].calc(); } int escape( int V1, int V2) { V1++; V2++; return allsq[0].dp[V1][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]
   15 |  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...