Submission #849933

#TimeUsernameProblemLanguageResultExecution timeMemory
849933Ahmed57Uplifting Excursion (BOI22_vault)C++17
0 / 100
388 ms160848 KiB
#include <bits/stdc++.h> using namespace std; long long dp[101][100001],arr[301],br = 5e4,n,m; long long solve(int i,int xd){ if(i==2*m+1){ if(xd==n+br)return 0; else return -1e18; } if(dp[i][xd]!=-1)return dp[i][xd]; long long ans = -1e18; for(int j = 0;j<=arr[i];j++){ ans = max(ans,solve(i+1,xd+j*(i-m))+j); } return dp[i][xd] = ans; } signed main(){ cin>>m>>n; for(int i = 0;i<2*m+1;i++){ cin>>arr[i]; } memset(dp,-1,sizeof dp); long long vl = solve(0,5e4); if(vl<0)cout<<"impossible\n"; else cout<<vl<<endl; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...