Submission #595481

#TimeUsernameProblemLanguageResultExecution timeMemory
595481DeepessonUplifting Excursion (BOI22_vault)C++17
0 / 100
59 ms380 KiB
#include <bits/stdc++.h> #define MAX 21000 int maximo[MAX]; int bonus = MAX/2; int main() { long long N,M; std::cin>>N>>M; if(abs(M)>bonus){ std::cout<<"impossible\n"; return 0; } for(auto&x:maximo)x=-(1e6); maximo[bonus]=0; for(int i=-N;i<=N;++i){ int c; std::cin>>c; for(int u=0;u!=c;++u){ if(i>0){ for(int j=MAX-1;j!=-1;--j){ if(j-i<0)continue; maximo[j]=std::max(maximo[j],maximo[j-i]+1); } }else { for(int j=0;j!=MAX;++j){ if(j-i>=MAX)continue; maximo[j]=std::max(maximo[j],maximo[j-i]+1); } } } } ///como proceder caso x=0? if(maximo[M+bonus]<=0){ std::cout<<"impossible\n"; return 0; } std::cout<<maximo[M+bonus]<<"\n"; }
#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...