Submission #551352

#TimeUsernameProblemLanguageResultExecution timeMemory
551352tabrTeams (IOI15_teams)C++17
34 / 100
4086 ms21908 KiB
#include <bits/stdc++.h> using namespace std; #ifdef tabr #include "library/debug.cpp" #else #define debug(...) #endif int n; vector<pair<int, int>> c; void init(int n_, int a[], int b[]) { n = n_; for (int i = 0; i < n; i++) { c.emplace_back(a[i], b[i]); } sort(c.begin(), c.end()); } int can(int m, int k[]) { if (accumulate(k, k + m, 0LL) > n) { return 0; } vector<int> d(n + 1); for (int i = 0; i < m; i++) { d[k[i]] += k[i]; } int id = 0; multiset<int> st; for (int i = 1; i <= n; i++) { while (id < n && c[id].first == i) { st.emplace(c[id].second); id++; } if ((int) st.size() < d[i]) { return 0; } for (int j = 0; j < d[i]; j++) { st.erase(st.begin()); } st.erase(i); } return 1; } #ifdef tabr int main() { ios::sync_with_stdio(false); cin.tie(0); return 0; } #endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...