Submission #332246

#TimeUsernameProblemLanguageResultExecution timeMemory
332246vitkishloh228Gift (IZhO18_nicegift)C++14
0 / 100
249 ms86652 KiB
#include<iostream> #include<vector> #include<algorithm> #include<deque> using namespace std; int main() { int n, k; cin >> n >> k; vector<int> a(n); for (int& i : a) cin >> i; deque<pair<int, int>> arr; for (int i = 0; i < n; ++i) { arr.push_back({ a[i],i }); } sort(arr.begin(), arr.end()); //reverse(arr.begin(), arr.end()); vector<vector<int>> ans; while (!arr.empty()) { if (k * ans.size() > 3 * 1e6) { cout << "-1"; return 0; } ans.push_back({}); if (arr.size() < k) continue; for (int i = (int)arr.size() - k; i < (int)arr.size(); ++i) { ans.back().push_back(arr[i].second + 1); arr[i].first--; } while (arr.size() && arr.front().first == 0) arr.pop_front(); } if (k * ans.size() > 3 * 1e6) { cout << "-1"; return 0; } cout << ans.size() << endl; for (auto elem : ans) { for (auto u : elem) cout << u << ' '; cout << "1\n"; } }

Compilation message (stderr)

nicegift.cpp: In function 'int main()':
nicegift.cpp:24:24: warning: comparison of integer expressions of different signedness: 'std::deque<std::pair<int, int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   24 |         if (arr.size() < k) continue;
      |             ~~~~~~~~~~~^~~
#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...