This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define debug if(0)
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n; cin>>n;
vector<ll> a(n), pref(n);
vector<pair<ll, ll>> t;
for(int i=0; i<n; i++) {
cin>>a[i];
int cnt = 1, left = a[i];
while(left%2 == 0) {
cnt<<=1;
left>>=1;
}
t.push_back({left, cnt});
if(i == 0) pref[i] = cnt;
else pref[i] = pref[i-1]+cnt;
}
int q; cin>>q;
while(q--) {
ll x; cin>>x;
int lo = 0, hi = n-1;
while(lo < hi) {
int m = (lo+hi)/2;
if(pref[m] < x) lo = m+1;
else hi = m;
}
if(lo < 0) lo = 0;
cout<<t[lo].first<<"\n";
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |