Submission #1057550

#TimeUsernameProblemLanguageResultExecution timeMemory
1057550beaconmcGift Exchange (JOI24_ho_t4)C++14
8 / 100
58 ms7000 KiB
#include <bits/stdc++.h> typedef long long ll; #define FOR(i,x,y) for(ll i=x; i<y; i++) #define FORNEG(i,x,y) for(ll i=x; i>y; i--) using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); ll n; cin >> n; vector<ll> vals(n), req(n); FOR(i,0,n) cin >> vals[i]; FOR(i,0,n) cin >> req[i]; vector<bool> visited(n); vector<bool> ending(n); vector<bool> starting(n); ending[0] = 1; FORNEG(i, n-1, 0){ if (visited[i] == 0) starting[i] = 1; if (vals[i-1] >= req[i]) visited[i] = 1, visited[i-1] = 1; else ending[i] = 1; } vector<ll> pref(n); pref[0] = visited[0]; FOR(i,1,n) pref[i] = pref[i-1] + visited[i]; ll q; cin >> q; FOR(i,0,q){ ll a,b; cin >> a >> b; a--;b--; ll sus = pref[b] - pref[a] + visited[a]; if (sus == (b-a+1) && !ending[b] && !starting[a]) cout << "Yes" << "\n"; else cout << "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...