from datetime import date, timedelta
def solve():
k = int(input())
max_consecutive = 0
for start_day in range(7): # 0 for Monday, 6 for Sunday
is_holiday = [False] * 365
# Отмечаем первые K дней как праздничные
for i in range(k):
is_holiday[i] = True
# Отмечаем 23 февраля и 8 марта
def day_of_year(month, day, start_day_offset):
first_day = date(2024, 1, 1) + timedelta(days=start_day_offset)
target_date = date(first_day.year, month, day)
if target_date < first_day:
target_date = date(first_day.year + 1, month, day) # Handle wrapping around the year
return (target_date - (date(target_date.year, 1, 1))).days
day_23_feb = day_of_year(2, 23, start_day)
day_8_mar = day_of_year(3, 8, start_day)
if 0 <= day_23_feb < 365:
is_holiday[day_23_feb] = True
if 0 <= day_8_mar < 365:
is_holiday[day_8_mar] = True
# Перенос праздников с выходных
changed = True
while changed:
changed = False
for i in range(365):
current_date = date(2024, 1, 1) + timedelta(days=i + start_day)
day_of_week = current_date.weekday() # 0 - понедельник, 6 - воскресенье
if is_holiday[i] and (day_of_week == 5 or day_of_week == 6): # Праздник в субботу или воскресенье
# Находим ближайший рабочий день после праздника
переноса
исходный_день = i
while True:
исходный_день += 1
if исходный_день >= 365:
break # Если перенос выходит за рамки года (маловероятно, но для надежности)
новая_дата = date(2024, 1, 1) + timedelta(days=исходный_день + start_day)
новый_день_недели = новая_дата.weekday()
if новый_день_недели < 5 : # Понедельник - пятница
if not is_holiday[исходный_день]:
is_holiday[исходный_день] = True
is_holiday[i] = False
changed = True
break
break # Начинаем проверку заново после изменения
# Расчет максимального количества подряд идущих нерабочих дней
current_consecutive = 0
for i in range(365):
current_date = date(2024, 1, 1) + timedelta(days=i + start_day)
day_of_week = current_date.weekday()
if is_holiday[i] or day_of_week >= 5: # Праздник или выходной (суббота, воскресенье)
current_consecutive += 1
else:
max_consecutive = max(max_consecutive, current_consecutive)
current_consecutive = 0
max_consecutive = max(max_consecutive, current_consecutive)