Submission #658957

#TimeUsernameProblemLanguageResultExecution timeMemory
658957pere_gilCatfish Farm (IOI22_fish)C++17
23 / 100
1197 ms2097152 KiB
#include "fish.h" #include "bits/stdc++.h" using namespace std; typedef long long ll; ll max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w){ int h=0; for(int i=0;i<m;i++) h=max(h,y[i]); h+=2; ll fish[n][h]={}; for(int i=0;i<m;i++) fish[x[i]][y[i]+1]=w[i]; for(int i=0;i<n;i++) for(int j=1;j<h;j++) fish[i][j]+=fish[i][j-1]; ll dp[n][h][h][h]={}; for(int i=1;i<n;i++){ for(int j=0;j<h;j++){ for(int k=0;k<h;k++){ ll prev=0; for(int l=0;l<h;l++) prev=max(prev,dp[i-1][l][j][k]); for(int l=0;l<h;l++){ dp[i][j][k][l]+=prev; if(k>=l) dp[i][j][k][l]+=fish[i][k]-fish[i][l]; else dp[i][j][k][l]+=fish[i-1][max(j,l)]-fish[i-1][max(j,k)]; } } } } ll res=0; for(int i=0;i<h;i++) for(int j=0;j<h;j++) for(int k=0;k<h;k++) res=max(res,dp[n-1][i][j][k]); return 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...