제출 #897457

#제출 시각아이디문제언어결과실행 시간메모리
897457Sir_Ahmed_ImranWombats (IOI13_wombats)C++17
55 / 100
20037 ms210500 KiB
///~~~LOTA~~~/// #include "wombats.h" #include <bits/stdc++.h> using namespace std; #define nl '\n' #define ff first #define ss second #define ll long long #define append push_back #define pii pair<int,int> #define all(x) (x).begin(),(x).end() #define N 10000000 int n,m; int x[5000][100]; int y[5000][100]; int dp[5000][100][100]; void compute_dp(){ for(int i=0;i<m;i++) for(int j=0;j<m;j++) dp[n-1][i][j]=abs(x[n-1][i]-x[n-1][j]); for(int i=n-2;i>=0;i--){ for(int j=0;j<m;j++){ for(int k=0;k<m;k++){ dp[i][j][k]=1e9; for(int l=0;l<m;l++) dp[i][j][k]=min(dp[i][j][k], dp[i+1][l][k]+abs(x[i][j]-x[i][l])+y[i][l]); } } } } 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++) x[i][j+1]=x[i][j]+H[i][j]; for(int i=0;i<n-1;i++) for(int j=0;j<m;j++) y[i][j]=V[i][j]; compute_dp(); } void changeV(int p,int q,int w){ y[p][q]=w; if(max(n,m)<20) compute_dp(); } void changeH(int p,int q,int w){ for(int i=m-1;i>0;i--) x[p][i]-=x[p][i-1]; x[p][q+1]=w; for(int i=0;i<m-1;i++) x[p][i+1]+=x[p][i]; if(max(n,m)<20) compute_dp(); } int escape(int p,int q){ if(max(n,m)>20) compute_dp(); return dp[0][p][q]; }

컴파일 시 표준 에러 (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...