Submission #1226862

#TimeUsernameProblemLanguageResultExecution timeMemory
1226862AvianshCookies (JOI23_cookies)C++20
6 / 100
1 ms1096 KiB
#include <bits/stdc++.h> using namespace std; signed main(){ ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; int a[n]; for(int &i : a){ cin >> i; assert(i==1); } int m; cin >> m; int b[m]; for(int &i : b){ cin >> i; } vector<int>dp[n+1]; bool val[n+1]; fill(val,val+n+1,0); val[0]=1; for(int i = 1;i<=n;i++){ for(int k : b){ if(i-k>=0){ if(val[i-k]){ if(val[i]){ if(dp[i-k].size()+1<dp[i].size()){ dp[i].clear(); for(int z : dp[i-k]){ dp[i].push_back(z); } dp[i].push_back(k); } } else{ val[i]=1; for(int z : dp[i-k]){ dp[i].push_back(z); } dp[i].push_back(k); } } } } } if(!val[n]){ cout << -1; return 0; } cout << dp[n].size() << "\n"; int curr = 1; for(int i : dp[n]){ cout << i << " "; for(int j = 0;j<i;j++){ cout << curr++ << " "; } cout << "\n"; } return 0; }
#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...