using System;
using System.Collections.Generic;

namespace Madjonicar
{
    class Program
    {
        static List<int> spilKarata = new List<int>();
        static List<int> presecenSpil = new List<int>();

        static void Main(string[] args)
        {

            Console.Write("N? ");
            int N = int.Parse(Console.ReadLine());
            if (N > 20000 || N < 2)
            {
                return;
            }
            PopuniListu(N);
            PromesajKarte();
            Console.Write("Da li zelite da presecete spil?(da/ne) ");
            string presek = Console.ReadLine();
            if (presek == "da")
            {
                PreseciSpil();
            }
            else
            {
                KopirajSpil(N);
            }
            IspisiListu();
            Console.Write("K? ");
            int K = int.Parse(Console.ReadLine());
            int poslednji = presecenSpil[0];
            if (K == poslednji || K > N || K < 1)
            {
                return;
            }
            PronadjiKartu(K);
           

        }
        
        static void IspisiListu()
        {
            for (int i = 0; i < presecenSpil.Count; i++)
            {
                Console.Write(presecenSpil[i] + " ");
            }
            Console.WriteLine();
        }
        static void PromesajKarte()
        {
            int duzina = spilKarata.Count;
            Random rnd = new Random();
            for (int i = 0; i < duzina; i++)
            {
                swap(i, i + rnd.Next(duzina - i));
            }
        }
        static void swap(int a, int b)
        {
            int pomocna = spilKarata[a];
            spilKarata[a] = spilKarata[b];
            spilKarata[b] = pomocna;
        }
        static void PopuniListu(int N)
        {
            for (int i = 1; i <= N; i++)
            {
                spilKarata.Add(i);
            }
        }
        static void PreseciSpil()
        {
            int sredina = spilKarata.Count / 2;
            for (int i = sredina; i < spilKarata.Count; i++)
            {
                presecenSpil.Add(spilKarata[i]);
            }
            for (int k = 0; k < sredina; k++)
            {
                presecenSpil.Add(spilKarata[k]);
            }
        }
        static void KopirajSpil(int N)
        {
            for (int i = 0; i < N; i++)
            {
                presecenSpil.Add(spilKarata[i]);
            }
        }
        static void PronadjiKartu(int K)
        {
            int karta = presecenSpil.IndexOf(K) - 1;
            Console.WriteLine(presecenSpil[karta]);
        }

    }
}