Submission #579676

#TimeUsernameProblemLanguageResultExecution timeMemory
579676wdjpngUplifting Excursion (BOI22_vault)C++17
0 / 100
758 ms5540 KiB
#include <bits/stdc++.h> #define int long long #define rep(i,n) for(int i = 0; i < n; i++) #define per(i,n) for(int i = n-1; i >=0; i--) using namespace std; signed main() { int m,l; cin>>m>>l; int maxl=max(l+1,(m)*(m+1)/2*50)+100000; vector<int>dp(2*maxl+1, -1); dp[maxl]=0; for(int cl = -m; cl <= m; cl++) { int a; cin>>a; rep(whatever,a) { if(cl>0) { per(i,2*maxl+1) { if(i-cl<0||i-cl>=dp.size()||dp[i-cl]==-1) continue; dp[i]=max(dp[i], dp[i-cl]+1); } } else rep(i,2*maxl+1) { if(i-cl<0||i-cl>=dp.size()||dp[i-cl]==-1) continue; dp[i]=max(dp[i], dp[i-cl]+1); } } } assert(l+maxl<dp.size()); if(dp[l+maxl]>0) cout<<dp[l+maxl]<<'\n'; else cout<<"impossible\n"; }

Compilation message (stderr)

vault.cpp: In function 'int main()':
vault.cpp:27:36: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |                     if(i-cl<0||i-cl>=dp.size()||dp[i-cl]==-1) continue;
      |                                ~~~~^~~~~~~~~~~
vault.cpp:33:32: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   33 |                 if(i-cl<0||i-cl>=dp.size()||dp[i-cl]==-1) continue;
      |                            ~~~~^~~~~~~~~~~
In file included from /usr/include/c++/10/cassert:44,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:33,
                 from vault.cpp:1:
vault.cpp:38:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |     assert(l+maxl<dp.size());
      |            ~~~~~~^~~~~~~~~~
#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...