Submission #862269

#TimeUsernameProblemLanguageResultExecution timeMemory
862269TAhmed33Osumnjičeni (COCI21_osumnjiceni)C++98
0 / 110
314 ms1988 KiB
#include <bits/stdc++.h> using namespace std; int main () { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; pair <int, int> arr[n + 1]; for (int i = 1; i <= n; i++) cin >> arr[i].first >> arr[i].second; int q; cin >> q; while (q--) { int l, r; cin >> l >> r; set <pair <int, int>> cur; cur.insert(arr[l]); int cnt = 1; for (int i = l + 1; i <= r; i++) { auto x = cur.lower_bound({arr[i].second + 1, 0}); if (x == cur.begin()) { cur.insert(arr[i]); continue; } x--; auto l = *x; if (arr[i].first >= l.first && arr[i].first <= l.second) { cur.clear(); cnt++; } else if (arr[i].second >= l.first && arr[i].second <= l.second) { cur.clear(); cnt++; } cur.insert(arr[i]); } cout << cnt << '\n'; } }
#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...