Краткий ответ: минимальная сумма равна
\[
n-\left\lfloor\frac{n}{k+1}\right\rfloor
\]
рублей.
Код на Python:
k = int(input())
n = int(input())
print(n - n // (k + 1))
Почему так.
Пусть среди нужных \(n\) жетонов будет \(b\) бесплатных. Тогда платных — \(n-b\).
Каждый бесплатный жетон требует \(k\) оплаченных, поэтому: \[ n-b \ge kb \] \[ n \ge b(k+1) \] \[ b \le \frac{n}{k+1} \]
Максимум бесплатных жетонов: \[ b=\left\lfloor\frac{n}{k+1}\right\rfloor \]
Значит, заплатить нужно за: \[ n-\left\lfloor\frac{n}{k+1}\right\rfloor \] жетонов, то есть столько же рублей.
Проверка:
- \(k=2,\ n=8\): \(8-8//3=6\);
- \(k=3,\ n=3\): \(3-3//4=3\);
- \(k=1,\ n=5\): \(5-5//2=3\).
Всё совпадает с примерами.
