#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... |