제출 #338578

#제출 시각아이디문제언어결과실행 시간메모리
338578kutbilim_oneGift (IZhO18_nicegift)C++14
7 / 100
600 ms70332 KiB
/** kutbilim.one **/ #include <bits/stdc++.h> using namespace std; #define all(x) x.begin(),x.end() #define int long long #define endl '\n' /* ifstream in("test.txt"); #define cin in */ signed main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int n, k; cin >> n >> k; priority_queue< pair<int, int> > q; vector<int> a(n); for(int i = 0; i < n; i++){ cin >> a[i]; q.push({a[i], i+1}); } vector< pair<int, vector<int>> > result; while(true){ vector<int> val(k, 0), ind(k, 0); for(int i = 0; i < k; i++){ val[i] = q.top().first; ind[i] = q.top().second; q.pop(); } if(val[0] == 0) break; int x = val.back(); if(x == 0) return cout << -1, 0; result.push_back({x, ind}); for(int i = k-1; i >= 0; i--){ val[i] -= x; q.push({val[i], ind[i]}); } } cout << result.size() << endl; for(auto i : result){ cout << i.first << " "; for(auto j : i.second) cout << j << " "; 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...