Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3745236
А
Аноним
20 октября 2026 10:32 · публичный вопрос
А
Аноним

Напиши код на пайтоне для решения этой задачи

Нейросеть20 октября 2026 10:32

Кратко: количество вариантов равно

\[ \left\lfloor \frac{n^2+3}{12} \right\rfloor \]

Поэтому перебирать \(a,b,c\) не нужно — решение работает за \(O(1)\).

import sys

def main():
    n = int(sys.stdin.buffer.readline())
    ans = (n * n + 3) // 12
    print(ans)

if __name__ == "__main__":
    main()

Почему формула такая:

  • Нужны тройки \(a \le b \le c\), \(a,b,c \ge 1\), \(a+b+c=n\).
  • Зафиксируем \(a\). Тогда \(b\) может принимать значения от \(a\) до \(\lfloor(n-a)/2\rfloor\), потому что \(b \le c\).
  • Количество подходящих \(b\) при данном \(a\): \[ \left\lfloor\frac{n-a}{2}\right\rfloor-a+1 \]
  • Суммируя это по \(a=1,\dots,\lfloor n/3\rfloor\) и упрощая сумму, получаем \[ \left\lfloor\frac{n^2+3}{12}\right\rfloor. \]

Проверка для \(n=7\):

\[ \frac{7^2+3}{12}=\frac{52}{12}=4 \]

и действительно подходят:

\[ 1+1+5,\quad 1+2+4,\quad 1+3+3,\quad 2+2+3. \]

Сложность: \(O(1)\) по времени и \(O(1)\) по памяти. Python автоматически хранит большие целые числа, поэтому переполнение не возникнет.

Обсуждение

1 сообщение
А
Аноним

Напиши код на пайтоне для решения этой задачи

напиши код на пайтоне для решения этой задачи
Кратко: количество вариантов равно \[ \left\lfloor \frac{n^2+3}{12} \right\rfloor \] Поэтому перебирать \(a,b,c\) не нужно — решение работает за \(O(1)\). ```python import sys def main(): n = int(sys.stdin.buffer.readline()) ans = (n * n + 3) // 12 print(ans) if __name__ == "__main__": main() ``` Почему формула такая: - Нужны тройки \(a \le b \le c\), \(a,b,c \ge 1\), \(a+b+c=n\). - Зафиксируем \(a\). Тогда \(b\) может принимать значения от \(a\) до \(\lfloor(n-a)/2\rfloor\), потому что \(b \le c\). - Количество подходящих \(b\) при данном \(a\): \[ \left\lfloor\frac{n-a}{2}\right\rfloor-a+1 \] - Суммируя это по \(a=1,\dots,\lfloor n/3\rfloor\) и упрощая сумму, получаем \[ \left\lfloor\frac{n^2+3}{12}\right\rfloor. \] Проверка для \(n=7\): \[ \frac{7^2+3}{12}=\frac{52}{12}=4 \] и действительно подходят: \[ 1+1+5,\quad 1+2+4,\quad 1+3+3,\quad 2+2+3. \] Сложность: \(O(1)\) по времени и \(O(1)\) по памяти. Python автоматически хранит большие целые числа, поэтому переполнение не возникнет.