К собеседованиям
Т-Банк

Алгоритмический тренажер

Алгоритмическая секция в Т-Банк

Тип тренировки
Алгоритмы
Задач
3
Компания
Т-Банк
Дата
2025-10-07
Задача 1MediumЖадный алгоритмСортировкаМассивыКупоны

Минимальная стоимость после купонов

Условие задачи

Дан список цен товаров prices, количество купонов k и размер скидки x.

Каждый купон можно применить к одному товару. Один купон уменьшает цену выбранного товара на x, но цена не может стать отрицательной. Купоны можно применять к одному и тому же товару несколько раз.

Верните минимальную сумму денег, которую придется заплатить за все товары после применения не более k купонов.

Сигнатура

def min_total_after_coupons(prices: list[int], k: int, x: int) -> int:

Ваше решение

Консоль
Нажмите «Запустить проверки» или Ctrl+Enter
Задача 2MediumБинарный поискМассивыГраницы

Первое и последнее вхождение в отсортированном массиве

Дан отсортированный по неубыванию массив nums и число target.

Верните индексы первого и последнего вхождения target. Если числа в массиве нет, верните пустой список.

Решение должно работать за O(log n).

Сигнатура

def search_range(nums: list[int], target: int) -> list[int]:

Ваше решение

Консоль
Нажмите «Запустить проверки» или Ctrl+Enter
Задача 3MediumГеометрияХеш-множествоСимметрияМассивы

Ось симметрии для точек

Условие задачи

Даны различные точки на плоскости с целыми координатами.

Нужно определить, существует ли вертикальная ось симметрии, то есть прямая x = c, параллельная оси y, относительно которой множество точек совпадает само с собой.

Если такая ось есть, верните ее абсциссу c. Если оси нет, верните None.

Сигнатура

def vertical_symmetry_axis(points: list[list[int]]):

Ваше решение

Консоль
Нажмите «Запустить проверки» или Ctrl+Enter