Submission #1132525

#TimeUsernameProblemLanguageResultExecution timeMemory
1132525antonnGift Exchange (JOI24_ho_t4)C++20
10 / 100
2594 ms3776 KiB
#include <bits/stdc++.h> #define F first #define S second using namespace std; using ll = long long; using pi = pair<int, int>; using vi = vector<int>; template<class T> bool ckmin(T& a, T b) { return b < a ? a = b, true : false; } template<class T> bool ckmax(T& a, T b) { return a < b ? a = b, true : false; } int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; vector<int> a(n + 1), b(n + 1); for (int i = 1; i <= n; ++i) cin >> a[i]; for (int i = 1; i <= n; ++i) cin >> b[i]; vector<int> sol(n + 1); int q; cin >> q; while (q--) { int l, r; cin >> l >> r; vector<pair<int, int>> va, vb; for (int i = l; i <= r; ++i) va.push_back({a[i], i}); for (int i = l; i <= r; ++i) vb.push_back({b[i], i}); sort(va.begin(), va.end()); sort(vb.begin(), vb.end()); for (int i = 0; i+1 < va.size(); ++i) if (va[i].second == vb[i].second) swap(va[i], va[i + 1]); if (va.back().second == vb.back().second) swap(va.back(), va[va.size() - 2]); bool ok = 1; for (int i = 0; i < va.size(); ++i) ok &= va[i].second != vb[i].second; for (int i = 0; i < va.size(); ++i) ok &= va[i].first >= vb[i].first; cout << (ok ? "Yes" : "No") << "\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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...