Submission #950015

#TimeUsernameProblemLanguageResultExecution timeMemory
950015AbitoCookies (JOI23_cookies)C++17
6 / 100
1 ms640 KiB
#include <bits/stdc++.h> #define F first #define S second #define pb push_back #define ppb pop_back #define ep insert #define endl '\n' #define elif else if #define pow pwr #define sqrt sqrtt #define int long long #define ll long long typedef unsigned long long ull; using namespace std; const int N=505; int dp[N],a[N],b[N],n,m; int32_t main(){ ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); dp[0]=0;vector<int> v; for (int i=1;i<N;i++) dp[i]=1e6; cin>>n; for (int i=1;i<=n;i++) cin>>a[i],v.pb(i); cin>>m; for (int i=1;i<=m;i++) cin>>b[i]; for (int i=1;i<=n;i++) for (int j=1;j<=m;j++) if (i-b[j]>=0) dp[i]=min(dp[i],dp[i-b[j]]+1); if (dp[n]>=1e6){ cout<<-1<<endl; return 0; } cout<<dp[n]<<endl; int x=n; while (x){ int y=0; for (int j=1;j<=m;j++) if (x-b[j]>=0 && dp[x-b[j]]+1==dp[x]) y=j; cout<<b[y]<<' '; for (int i=0;i<b[y];i++) cout<<v.back()<<' ',v.ppb(); cout<<endl; x-=b[y]; } 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...