Submission #1167239

#TimeUsernameProblemLanguageResultExecution timeMemory
1167239chikien2009Exhibition (JOI19_ho_t2)C++20
0 / 100
0 ms524 KiB
#include <bits/stdc++.h> using namespace std; inline void setup() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); } int n, m, l, r, c[100000], mid, res = 0; pair<int, int> p[100000]; inline bool Check(int inp) { for (int i = 0, j = 0; i < n; ++i) { if (c[j] >= p[i].first) { j++; } if (j == inp) { return true; } } return false; } inline bool comp(const pair<int, int> & ina, const pair<int, int> & inb) { return (ina.second != inb.second ? ina.second > inb.second : ina.first > inb.first); } int main() { setup(); cin >> n >> m; for (int i = 0; i < n; ++i) { cin >> p[i].first >> p[i].second; } for (int i = 0; i < m; ++i) { cin >> c[i]; } sort(c, c + m, greater<int>()); sort(p, p + n, comp); l = 0; r = min(n, m); while (l <= r) { mid = (l + r) >> 1; if (Check(mid)) { res = mid; l = mid + 1; } else { r = mid - 1; } } cout << res; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...