#include <iostream>
#include<algorithm>
#include<string>
#include <vector>

using namespace std;

int main()
{
    int n, m;

    cin >> n >> m;

    vector<int> A;
    vector<int> B;

    for(int i = 0; i < n; i++)
    {
        int ulaz;

        cin >> ulaz;

        A.push_back(ulaz);
    }

    for(int i = 0; i < m; i++)
    {
        int ulaz;

        cin >> ulaz;

        B.push_back(ulaz);
    }

    sort(A.begin(), A.end());

    for(int i = 0; i < m; i++)
    {
        int brojac = 0;
        int medijana = A[(n - 1) / 2];
        if(std::find(A.begin(), A.end(), B[i]) == A.end())
        {
            int daljina = 2147483640;
            int index = 0;
            for(int j = 0; j < n; j++)
            {
                if(abs(A[j] - B[i]) <= daljina && ((A[j] < B[i] && B[i] > medijana) || (B[i] < medijana)))
                {
                    index = j;
                    daljina = abs(A[j] - B[i]);
                }
                else
                {
                    break;
                }
            }

            brojac = n % 2 + abs((n - 1) / 2 - index) * 2;
        }
        else
        {
            int lokacija;
            if(B[i] >= medijana)
            {
                lokacija = lower_bound(A.begin(), A.end(), B[i]) - A.begin();
            }
            else
            {
                lokacija = upper_bound(A.begin(), A.end(), B[i]) - A.begin();
            }

            brojac = abs(lokacija - ((n - 1) / 2));
        }

        cout << brojac << endl;
    }
}