Submission #574058

#TimeUsernameProblemLanguageResultExecution timeMemory
574058Ronin13Exhibition (JOI19_ho_t2)C++14
0 / 100
1 ms212 KiB
#include<bits/stdc++.h> #define ll long long #define ull unsigned ll #define f first #define s second #define pll pair<ll,ll> #define pii pair<int,int> #define pb push_back #define epb emplace_back using namespace std; const ll linf = 1e18 + 1; int main(){ int n; cin >> n; int m; cin >> m; vector <ll> d(n + 1, linf); d[0] = 0; pll a[n + 1]; ll c[m + 1]; for(int i = 1; i <= n; i++) cin >> a[i].f >> a[i].s; for(int i = 1; i <= m; i++) cin >> c[i]; sort(a + 1, a + 1 + n); sort(c + 1, c + m + 1); int ind = 1; ll ans = 0; ll res = 0; for(int i = 1; i <= m; i++){ while(a[ind].f <= c[i]){ ll x = upper_bound(d.begin(), d.end(), a[ind].s) - d.begin(); res = max(res, x); d[x] = a[ind].s; ind++; } ans = min(res, (ll)i); } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...