Мини-урок · перед практикой
Високосный год
Проверяем исключение для столетий.
Как к ней подойти
Потренируйтесь переводить условие в проверку: какие случаи возможны и в каком порядке их проверять.
Коротко о теме
Ветвление выбирает один из нескольких вариантов. Запишите каждый случай словами, затем переведите их в if, elif и else. Отдельно проверьте границы: равенство часто меняет ответ.
Ключевая идея · Логическое выражение
Год кратный 400 високосный; остальные должны делиться на 4 и не делиться на 100.
Проверьте перед запуском
- 1900 не високосный, а 2000 високосный.
После практики
Сравните свой подход
Ниже - готовое решение, другой способ, если он есть, и важные детали проверки.
Ваше принятое решение
Рекомендуемое решение: Логическое выражение
Год кратный 400 високосный; остальные должны делиться на 4 и не делиться на 100.
y = int(input())
print("YES" if y % 400 == 0 or y % 4 == 0 and y % 100 != 0 else "NO")
Время: O(1). Память: O(1).
Другой способ: Последовательные ветви
Сначала обрабатываем более редкие исключения, затем общее правило.
y = int(input())
if y % 400 == 0:
print('YES')
elif y % 100 == 0:
print('NO')
elif y % 4 == 0:
print('YES')
else:
print('NO')
Время: O(1). Память: O(1).