# 3. Массив размером 2m + 1, где m — натуральное число, заполнен случайным
# образом. Найдите в массиве медиану. Медианой называется элемент ряда, делящий
# его на две равные части: в одной находятся элементы, которые не меньше
# медианы, в другой — не больше медианы.
# Примечание: задачу можно решить без сортировки исходного массива. Но если это
# слишком сложно, используйте метод сортировки, который не рассматривался на
# уроках (сортировка слиянием также недопустима).

import random


def full_randarray(x, y, size):
    """
    Возвращает массив из size элементов от x до y в произвольном порядке
    """
    array = [random.randint(x, y) for _ in range(size)]
    random.shuffle(array)
    return array


def median_search(lst):
    while len(lst) != 1:
        lst.remove(max(lst))
        lst.remove(min(lst))
    return lst[0]


n = int(input('Для создания массива длинной 2m + 1 элемент введите m: '))
b = full_randarray(0, 20, n * 2 + 1)
print(f'Создан массив из {n * 2 + 1} элементов:\n{b}')
c = sorted(b)
print(f'Для наглядности массив был отсортирован:\n{c}')
a = median_search(b)
print(f'Медиана массива: {a}')
