Submission #80600

#TimeUsernameProblemLanguageResultExecution timeMemory
80600inomGift (IZhO18_nicegift)C++14
7 / 100
2021 ms2552 KiB
#include <bits/stdc++.h> #define fi first #define se second #define pb push_back #define sz(c) (int)(c).size() #define all(c) (c).begin(), (c).end() #define in freopen("input.txt", "r", stdin); #define out freopen("output.txt", "w", stdout); using namespace std; const int N = 2 * 1e5 + 10; const int MOD = 1e9 + 7; const int INF = 1e9; int TN = 1; int n, k; pair<int, int> a[N]; vector<vector<int>> ans; void solve() { cin >> n >> k; for (int i = 1; i <= n; i++) { cin >> a[i].fi; a[i].se = i; } while (true) { sort(a + 1, a + 1 +n, [](pair<int, int> x, pair<int, int> y) { if (x.fi > y.fi) { return true; } else if (x.fi < y.fi) { return false; } else { if (x.se < y.se) { return true; } else { return false; } } }); bool can = true; for (int i = 1; i <= k; i++) { if (a[i].fi == 0) { can = false; break; } } if (!can) { break; } int x = 1; vector<int> cur; cur.pb(1); for (int i = 1; i <= k; i++) { a[i].fi--; cur.pb(a[i].se); } ans.pb(cur); } for (int i = 1; i <= n; i++) { if (a[i].fi > 0) { cout << -1 << "\n"; return; } } cout << sz(ans) << "\n"; for (auto i: ans) { for (auto j: i) { cout << j << " "; } cout << endl; } return; } signed main() { // ios_base::sync_with_stdio(0); // in; out; // cin >> TN; while (TN--) solve(); return 0; }

Compilation message (stderr)

nicegift.cpp: In function 'void solve()':
nicegift.cpp:55:13: warning: unused variable 'x' [-Wunused-variable]
         int x = 1;
             ^
#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...