Мини-урок · перед практикой

Високосный год

Проверяем исключение для столетий.

Как к ней подойти

Потренируйтесь переводить условие в проверку: какие случаи возможны и в каком порядке их проверять.

Коротко о теме

Ветвление выбирает один из нескольких вариантов. Запишите каждый случай словами, затем переведите их в 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).