Submission #1166622

#TimeUsernameProblemLanguageResultExecution timeMemory
1166622thinknoexitGift Exchange (JOI24_ho_t4)C++20
50 / 100
2592 ms4904 KiB
#include<bits/stdc++.h> using namespace std; using ll = long long; const int N = 500500; int a[N], b[N]; int n; int main() { cin.tie(nullptr)->sync_with_stdio(false); cin >> n; for (int i = 1;i <= n;i++) cin >> a[i]; for (int i = 1;i <= n;i++) cin >> b[i]; int q; cin >> q; while (q--) { vector<pair<int, int>> v; int l, r; cin >> l >> r; for (int i = l;i <= r;i++) { v.push_back({ b[i], 1 }); v.push_back({ a[i], -1 }); } sort(v.begin(), v.end()); bool ch = 1; stack<int> st; for (auto& [x, w] : v) { if (w == 1) st.push(0); else { int val = st.top(); st.pop(); if (val == 0 && st.empty()) { ch = 0; break; } if (!st.empty()) { st.pop(); st.push(1); } } } if (ch) cout << "Yes\n"; else cout << "No\n"; } return 0; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...