Submission #858749

#TimeUsernameProblemLanguageResultExecution timeMemory
858749imarnCatfish Farm (IOI22_fish)C++17
0 / 100
760 ms429420 KiB
#include<bits/stdc++.h> //#include "insects.h" #define f first #define s second #define ll long long #define pb push_back #define pii pair<int,int> #define pll pair<ll,ll> //#define sz(x) (ll)x.size() #define all(x) x.begin(),x.end() using namespace std; ll dpl[3001][3001]{0}; ll dpr[3001][3001]{0}; ll mp[3001][3001]{0}; ll max_weights(int N, int M,vector<int> X,vector<int> Y,vector<int> W) { for(int i=0;i<M;i++){ mp[Y[i]+1][X[i]+1]+=W[i]; }ll ans=0; for(int i=1;i<=N;i++)for(int j=1;j<=N;j++)mp[i][j]+=mp[i-1][j]; for(int i=1;i<=N;i++){ for(int j=0;j<=N;j++){ dpl[j][i]=0; for(int k=0;k<=N;k++){ dpl[j][i] = max(dpl[k][i-1]+max(mp[j][i-1]-mp[k][i-1],1ll*0),dpl[j][i]); } } } for(int i=N;i>=1;i--){ for(int j=0;j<=N;j++){ dpr[j][i]=0; for(int k=0;k<=N;k++){ dpr[j][i] = max(dpr[k][i+1]+max(mp[j][i+1]-mp[k][i+1],1ll*0),dpr[j][i]); } } } for(int i=1;i<=N;i++){ for(int j=0;j<=N;j++){ ans=max(ans,dpl[j][i]+dpr[j][i]); } } return ans; }
#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...