Краткий ответ: количество рабочих дней равно числу дней в полностью заполненных строках календаря.
Пусть
\[ a=(m-k+1)\bmod m \]
— количество дней в неполной первой строке. Если \(k=1\), первая строка полная, поэтому \(a=0\).
После неё остаётся \(n-a\) дней. Полных недель среди них:
\[ q=\left\lfloor\frac{n-a}{m}\right\rfloor. \]
Каждая полная неделя содержит \(m\) рабочих дней, поэтому
\[ \boxed{q\cdot m} \]
Пример
Пусть \(n=31,\ m=7,\ k=3\).
- первая строка содержит \(7-3+1=5\) дней;
- остаётся \(31-5=26\) дней;
- из них можно составить \(26//7=3\) полные строки.
Количество рабочих дней:
\[ 3\cdot7=21. \]
Оставшиеся дни в первой и последней неполных строках являются выходными.
Решение на Python
n, m, k = map(int, input().split())
first_incomplete = (m - k + 1) % m
working_days = (n - first_incomplete) // m * m
print(working_days)
Проверка: результат кратен \(m\), потому что рабочая область состоит только из полностью заполненных недель.
