# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1214164 | salmon | Cookies (JOI23_cookies) | C++20 | 2 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,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... |