제출 #575129

#제출 시각아이디문제언어결과실행 시간메모리
575129AngrySealIntercastellar (JOI22_ho_t1)C++14
100 / 100
96 ms10280 KiB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
    ios_base::sync_with_stdio(0); cin.tie(0);
    int n;
    cin>>n;
    ll a[n];
    for (int i=0;i<n;i++) cin>>a[i];
    ll num[n],pre[n];
    for (int i=0;i<n;i++){
        num[i] = 1;
        while (a[i] % 2 == 0){
            a[i] /= 2LL;
            num[i] *= 2LL;
        }
        if (i) pre[i] = num[i] + pre[i-1];
        else pre[i] = num[i];
    }
    int q;
    cin>>q;
    while (q--){
        ll xi;
        cin>>xi;
        int l = 0, r = n-1;
        while (l != r){
            int m = (l+r)/2;
            if (xi <= pre[m]) r = m;
            else l = m + 1;
        }
        cout<<a[l]<<'\n';
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...