Submission #879020

#TimeUsernameProblemLanguageResultExecution timeMemory
879020The_SamuraiGift (IZhO18_nicegift)C++17
7 / 100
382 ms64488 KiB
#include "bits/stdc++.h" using namespace std; using ll = long long; const int inf = 1e9; void solve() { int n, k; cin >> n >> k; vector<ll> a(n); for (ll &x: a) cin >> x; priority_queue<pair<ll, int>> pq; for (int i = 0; i < n; i++) pq.emplace(a[i], i); vector<vector<ll>> ans; while (pq.size() >= k) { vector<pair<ll, int>> v; vector<ll> add = {0}; ll mn = 1e18; for (int i = 0; i < k; i++) { v.emplace_back(pq.top()); mn = min(mn, (ll) v.back().first); add.emplace_back(v.back().second + 1); pq.pop(); } add[0] = mn; for (auto [x, i]: v) { if (x - mn > 0) pq.emplace(x - mn, i); } ans.emplace_back(add); } if (!pq.empty()) { cout << -1; return; } cout << ans.size() << '\n'; for (auto v: ans) { for (int x: v) cout << x << ' '; cout << '\n'; } } int main() { cin.tie(0)->sync_with_stdio(false); #ifdef sunnatov freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif int queries = 1; // cin >> queries; for (int test_case = 1; test_case <= queries; test_case++) { #ifdef sunnatov cout << "Test case: " << test_case << endl; #endif solve(); cout << '\n'; } }

Compilation message (stderr)

nicegift.cpp: In function 'void solve()':
nicegift.cpp:14:22: warning: comparison of integer expressions of different signedness: 'std::priority_queue<std::pair<long long int, int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   14 |     while (pq.size() >= k) {
      |            ~~~~~~~~~~^~~~
#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...