using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace NamestanjeGlasova2
{
    class Program
    {

        static int najbliziCentru(int[] a, int b)
        {
            if (a.Length % 2 == 0)
            {
                int pola1 = a.Length / 2;
                int pola2 = pola1 + 1;
                for (int i = 0; i <= ((a.Length - 2) / 2); i++)
                {
                    if (a[pola1 - i] == b) return pola1 - i;
                    else if (a[pola2 + i] == b) return pola2 + i;
                }
            }
            else
            {
                int pola = a.Length / 2;
                for (int i = 0; i <= ((a.Length - 1) / 2); i++)
                {
                    if (a[pola + i] == b) return pola + i;
                    else if (a[pola - i] == b) return pola - i;
                }
            }
            return -1;
        }

        static int saLeve (int[] a, int b)
        {
            int pos = Array.BinarySearch(a, b);
            if (pos >= 0)
            {
                return najbliziCentru(a, b);
            }
            else
            {
                return Math.Abs(pos + 1);
            }
        }

        static int saDesne (int[] a, int b)
        {
            int pos = Array.BinarySearch(a, b);
            if (pos >= 0)
            {
                return a.Length - najbliziCentru(a, b) - 1;
            }
            else
            {
                pos = Math.Abs(pos + 1);
                return a.Length - pos;
            }
        }

        static int KolikoDodati (int[] a, int b)
        {
            bool dodati;
            dodati = (Array.BinarySearch(a, b) < 0) ? true : false;
            int D = saDesne(a, b);
            int L = saLeve(a, b);

            if (L == D)
            {
                return 0 + Convert.ToInt32(dodati);
            }
            else if (L < D)
            {
                return D - L + Convert.ToInt32(dodati);
            }
            else
            {
                return L - D - 1 + Convert.ToInt32(dodati);
            }
        }

        static string IspisNiza(int[] n)
        {
            string ispis = "";
            for (int i = 0; i < n.Length; i++)
            {
                ispis += n[i] + "\n";
            }
            return ispis.Trim();
        }

        static void Main(string[] args)
        {
            string[] unos2, unos3;
            int[] glasovi;
            int[] rezultat;

            Console.ReadLine();
            unos2 = Console.ReadLine().Split(' ');
            unos3 = Console.ReadLine().Split(' ');

            glasovi = new int[unos2.Length];
            rezultat = new int[unos3.Length];
            for (int i = 0; i < unos2.Length; i++) glasovi[i] = int.Parse(unos2[i]);

            Array.Sort(glasovi);
            for (int i = 0; i < unos3.Length; i++)
            {
                rezultat[i] = KolikoDodati(glasovi, int.Parse(unos3[i]));
            }

            Console.WriteLine(IspisNiza(rezultat));
        }
    }
}