Submission #1220217

#TimeUsernameProblemLanguageResultExecution timeMemory
1220217Younis_DwaiCookies (JOI23_cookies)C++20
0 / 100
0 ms328 KiB
#pragma GCC optimize("Ofast,O3,unroll-loops") #pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt") #include<bits/stdc++.h> #define int long long #define F first #define S second #define pb push_back #define popp pop_back #define in insert #define endl "\n" #define mid (l+r)/2 using namespace std; const int N=505; int n,A[N],m,b[N],dp[505]; int32_t main(){ ios_base::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr); cin>>n; for(int i=1;i<=n;i++) cin>>A[i]; cin>>m; for(int i=1;i<=m;i++) cin>>b[i]; set<pair<int,int>> s; for(int i=1;i<=n;i++) s.in({A[i],i}); vector<vector<int>> v; bool can=1; while(s.size()){ vector<int> cur; if(s.size()<b[1]){ can=0; break ; } int need=b[1]; vector<pair<int,int>> putback; while(need){ --need; pair<int,int> x=*prev(s.end()); cur.pb(x.S); s.erase(x); x.F--; if(x.F)putback.pb(x); } for(auto u : putback) s.in(u); v.pb(cur); } if(!can) cout<<-1; else{ cout<<v.size()<<endl; for(int i=0;i<v.size();i++){ cout<<i+1<<' '; for(auto u : v[i]) cout<<u<<' '; cout<<endl; } } 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...