Задача Задача №3746692
А
А
Краткий ответ (Python):
n = int(input())
a = []
for _ in range(n):
a.append(int(input()))
answer = max(x for x in a if x % 10 == 3)
print(answer)
Как это работает
- Сначала вводим количество чисел
nи заполняем списокa. - Последняя цифра числа — это остаток от деления на 10:
\[
x \bmod 10
\]
Поэтому условие «оканчивается на 3» записывается так:
x % 10 == 3. - Выражение
x for x in a if x % 10 == 3
перебирает только числа, оканчивающиеся на 3. max(...)выбирает среди них наибольшее. По условию хотя бы одно такое число есть, поэтому пустого списка не будет.
Проверка
Пусть введены числа:
\[ 23,\ 14,\ 3,\ 53,\ 42 \]
Подходящие числа: \(23,\ 3,\ 53\).
Наибольшее из них — \(53\). Программа выведет 53.
Если все числа нужно вводить одной строкой, вместо цикла можно написать:
a = list(map(int, input().split()))