Нашли ошибку?

Два подарка на всю карту

СредняяРеализацияГлава 5

#хеш-таблицы#поискid: ga-gift-card-pair

Подарочную карту на total рублей нужно потратить полностью, купив ровно два разных товара. Напишите pair_for_card(prices, total): функция возвращает индексы (i, j) при i < j таких, что prices[i] + prices[j] == total, или None. Если подходящих пар несколько, годится любая.

Примеры

pair_for_card([700, 1500, 300, 1200], 1500)  # (2, 3): 300 + 1200
pair_for_card([500, 500], 1000)              # (0, 1): два разных товара с одной ценой
pair_for_card([500], 1000)                   # None: один товар нельзя купить дважды

Ограничения

Решение

def pair_for_card(prices: list[int], total: int) -> tuple[int, int] | None:
    """Индексы (i, j), i < j, с prices[i] + prices[j] == total, или None."""
    # ваш код
    raise NotImplementedError

Можно решать и в своём редакторе: «Скопировать с тестами» и запустите python3 gift_card_pair.py — тесты те же, результат покажет ✓ / ✗ и итог.