#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n;
    cin >> n;
    int a[n];
    for(int i = 0;i < n;++i)
    {
        cin >> a[i];
    }
    int q;
    cin >> q;
    while(q--)
    {
        int x;
        cin >> x;
        ll ans = 0;
        int ri = upper_bound(a,a+n,x)-a;
        int li = ri-1;
        while(li != -1 && ri != n)
        {
            if(x-a[li] > a[ri]-x)
            {
                int ni = upper_bound(a,a+n,2*x-a[li])-a-1;
                ans += abs(a[ni]-x);
                x = a[ni];
                ri = ni+1;
            }
            else
            {
                int ni = lower_bound(a,a+n,2*x-a[ri])-a;
                ans += abs(a[ni]-x);
                x = a[ni];
                li = ni-1;
            }
        }
        cout << ans + max(a[n-1],x) - min(x,a[0]) << "\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... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |