Олимпиада по информатике 2025-2026 муниципальный этап Хомячья раскраска

Олимпиада по информатике 2025-2026 муниципальный этап Хомячья раскраска

Скачать

Задача «Хомячья раскраска» — решение на Python

Идея решения

  • Цвет клетки задаётся по формуле:
    color(i, j) = ((i + j - 2) mod k) + 1, то есть цвет зависит только от суммы индексов.
  • Рассмотрим остатки:
    r = (i - 1) mod k, s = (j - 1) mod k.
    Тогда (i + j - 2) mod k = (r + s) mod k.
  • Посчитаем, сколько строк даёт каждый остаток r,
    и сколько столбцов даёт каждый остаток s.
  • Каждая пара остатков (r, s) даёт
    rows[r] * cols[s] клеток цвета
    t = (r + s) mod k.
  • Так как k ≤ 5, можно просто перебрать все пары остатков
    (не более 25 вариантов).

Код на Python