제출 #343220

#제출 시각아이디문제언어결과실행 시간메모리
343220SprdaloGift (IZhO18_nicegift)C++17
0 / 100
769 ms77676 KiB
#include <bits/stdc++.h> using namespace std; #define int ll typedef long long ll; typedef long double ld; typedef pair<int, int> pi; typedef pair<ll, ll> pl; typedef vector<int> vi; typedef vector<ll> vl; typedef vector<double> vd; typedef vector<bool> vb; typedef vector<char> vc; typedef vector<string> vs; typedef vector<pi> vp; typedef vector<pl> vpl; void no(){ cout << "-1\n"; exit(0); } signed main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); cerr.tie(nullptr); int n, k; cin >> n >> k; set<pi> s; for (int i = 0; i < n; ++i){ int x; cin >> x; s.insert({x, i}); } vector<vi> sol; while(!s.empty()){ int len = s.size(); if (len < k) no(); int d = 0; vi t; for (int i = 0; i < k; ++i){ pi p = *s.begin(); s.erase(s.begin()); if (!i){ t.push_back(p.first); d = p.first; } t.push_back(p.second+1); p.first -= d; if (p.first>0) s.insert(p); } sol.push_back(t); } cout << (int)sol.size() << '\n'; for (auto& i : sol){ for (auto& j : i) cout << j << ' '; cout << '\n'; } }
#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...