| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 1214168 | salmon | Cookies (JOI23_cookies) | C++20 | 3 ms | 840 KiB | 
#include <bits/stdc++.h>
using namespace std;
int N;
int M;
int lst[15100];
int B[15100];
int from[15100];
vector<int> memo[15100];
priority_queue<pair<int,int>> pq;
int main(){
	
	scanf(" %d",&N);
	
	int big = 0;
	int b = 0;
	
	for(int i = 1; i <= N; i++){
		scanf(" %d",&lst[i]);
		big = max(lst[i],big);
		b += lst[i];
	}
	
	scanf(" %d",&M);
	
	for(int i = 1; i <= M; i++){
		scanf(" %d",&B[i]);
	}
	
	B[M + 1] = b + 1;
	
	for(int i = 0; i <= b; i++){
		from[i] = -1;
	}
	
	vector<int> temp;
	
	for(int i = 1; i <= N; i++){
		pq.push({lst[i],i});
	}
	
	if(b % B[1] != 0 || big * B[1] > b){
		printf("-1");
	}
	else{
		printf("%d\n",b / B[1]);
		
		for(int i = 0; i < b / B[1]; i++){
			vector<pair<int,int>> v;
			printf("%d ",B[1]);
			
			for(int j = 0; j < B[1]; j++){
				v.push_back(pq.top());
				pq.pop();
			}
			
			for(int j = 0; j < B[1]; j++){
				if(v[j].first != 1){
					pq.push({v[j].first - 1,v[j].second});
				}
				printf("%d ",v[j].second);
			}
			printf("\n");
		}
	}
	
	
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
