using System;
using System.Collections.Generic;
using System.Security;
class Program
{
    static int izracunaj(int trazen, int[] a)
    {
        int broj1 = 0;
        bool da = false;
        for (int i = 0; i < a.Length; i++)
        {
            if (a[i] != trazen) broj1++;
            else i = a.Length - 1;
        }
        if(broj1 == a.Length)
        {
            for(int i = 0; i < a.Length-1; i++)
            {
                if (a[i] < trazen && trazen < a[i + 1]) { broj1 = i; i = a.Length - 2; da = true; }
            }
            if (da)
            {
                return broj1 + 1 - (a.Length - broj1 - 1);
            }
        }
        return broj1 - (a.Length - broj1 - 1);
    }

    static int izracunaj2(int trazen, int[] a)
    {
        int broj = -1;
        int x = -1;
        bool da = false;
        for (int i = 0; i < a.Length; i++)
        {
            if (a[i] == trazen) { x = i; i = a.Length - 1; }
        }
        if (x == -1)
        {
            for (int i = 0; i < a.Length - 1; i++)
            {
                if (a[i] < trazen && trazen < a[i + 1]) { broj = i; i = a.Length - 2; da = true; }
            }
            for(int i = 0; i < a.Length - 1; i++)
            {
                 if (da && broj == i) return a.Length - broj - broj;
            }
        }
        else
        {
            for (int i = x + 1; i < a.Length; i++)
            {
                broj = 0;
                if (a[i] != trazen) broj++;
                else i = a.Length - 1;
            }
        }
        if (broj == -1 && (a.Length+1)%2 == 0) return a.Length + 1;
        return Math.Abs(broj-(a.Length-broj-1));
    }
    static void Main(string[] args)
    {
        string[] s = Console.ReadLine().Split();
        int N = int.Parse(s[0]);
        int Q = int.Parse(s[1]);
        int[] a = new int[N];
        int[] b = new int[Q];
        string[] ss = Console.ReadLine().Split();
        for (int i = 0; i < N; i++)
        {
            a[i] = int.Parse(ss[i]);
        }
        string[] sss = Console.ReadLine().Split();
        for (int i = 0; i < Q; i++)
        {
            b[i] = int.Parse(sss[i]);
        }
        Array.Sort(a);
        int median = a[N / 2];
        int[] br = new int[Q];

        for (int i = 0; i < Q; i++)
        {
            if (median == b[i]) { continue; }
            else if (median < b[i]) { br[i] = izracunaj(b[i], a); }
            else { br[i] = izracunaj2(b[i], a); }
        }
        for (int i = 0; i < Q; i++)
        {
            if ((a.Length + br[i]) % 2 != 0 && br[i] != 0)
                br[i]--;
        }

        foreach (int x in br)
            Console.WriteLine(x);
    }
}