제출 #1323333

#제출 시각아이디문제언어결과실행 시간메모리
1323333zyntherixGift Exchange (JOI24_ho_t4)C++20
0 / 100
0 ms332 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pi pair<int, int> #define vi vector<int> #define vs vector<string> #define vb vector<bool> #define vpi vector<pi> #define pb push_back #define all(a) (a).begin(), (a).end() const int mod = 1e9 + 7; void solve() { int n; cin >> n; vi a(n), b(n); for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) cin >> b[i]; int q; cin >> q; while (q--) { int l, r; cin >> l >> r; l--; r--; vi x; set<int> y; y.insert(mod); map<int, int> z; for (int i = l; i <= r; i++) { x.pb(a[i]); z[a[i]] = b[i]; y.insert(b[i]); } sort(all(x)); for (int i = x.size() - 1; i >= 0; i--) { auto f = y.upper_bound(x[i]); if (f == y.begin()) break; f--; if (f == y.begin() && z[x[i]] == *f) break; if (z[x[i]] == *f) f--; y.erase(f); } if (y.size() > 1ll) { cout << "No\n"; } else { cout << "Yes\n"; } } } signed main() { ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); int t = 1; // cin >> t; while (t--) { solve(); } 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...