Submission #1281045

#TimeUsernameProblemLanguageResultExecution timeMemory
1281045dostsTopical (NOI23_topical)C++20
0 / 100
1 ms572 KiB
#include <bits/stdc++.h> #pragma GCC optimize("O3,unroll-loops") #pragma GCC target("avx2") #define int long long #define pii pair<int,int> #define vi vector<int> #define ff first #define ss second #define sp << " " << #define all(x) x.begin(),x.end() #define big(x) ((int)(x.size())) using namespace std; const int MOD = 1e9+7, LIM = 1e6+1, inf = 2e9; const int N = 1e5+1; void solve() { int c,p; cin >> c >> p; //bir conteste birden \xe7ok submitleniyo //>= m olanlar beni kullan?p +s alabilir //m1 <= m2 ve s1 >= s2 ise c2 gereksiz vector<pii> contests; for (int i=1;i<=c;i++) { int m,s; cin >> m >> s; contests.push_back({m,s}); } sort(all(contests)); vector<pii> filt; for (auto it : contests) { while (!filt.empty() && filt.back().ss < it.ss && filt.back().ff == it.ff) filt.pop_back(); if (filt.empty() || filt.back().ss < it.ss) { filt.push_back(it); } } int ans = 0; for (int i=1;i<=p;i++) { int q,d; cin >> q >> d; auto it = upper_bound(all(filt),pii{q,inf}); if (it == filt.begin()) continue; it = prev(it); if (it->ss < d) continue; ans+=it->ss-d; } cout << ans << '\n'; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0); #ifdef Dodi freopen("in.txt", "r", stdin); freopen("out.txt", "w", stdout); #endif int t = 1; //cin >> t; while (t --> 0) solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...