Решатель судоку 9×9

Задача по программированию с проверкой онлайн

Сложность
Сложная
Языки
Python
JavaScript
TypeScript
Java
Go
Темы
Рекурсия и перебор
Матрицы и сетки

Дано поле судоку 9×9: список из 9 строк по 9 символов, где цифра 1–9 — заполненная клетка, а . — пустая. Заполните все пустые клетки так, чтобы в каждой строке, каждом столбце и каждом из девяти квадратов 3×3 (строки и столбцы 0–2, 3–5, 6–8) каждая цифра от 1 до 9 встречалась ровно один раз. Уже заполненные клетки менять нельзя. Верните решённое поле в том же виде: 9 строк по 9 цифр.

Гарантируется, что данные цифры не противоречат правилам и решение ровно одно; поле может быть уже заполнено целиком. Среди тестов есть головоломки с 17 подсказками, на которых простой перебор клеток по порядку не уложится во время.

Пример: ["...9723.1", "6.......7", "...613..8", "5..2.1.3.", "26.3.8759", ".48.9..2.", "..6134...", "1.....67.", "8...26413"] → ["485972361", "613485297", "972613548", "597261834", "261348759", "348597126", "726134985", "134859672", "859726413"].


Источник: задача CodeShare

Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).

Ещё задачи

Все задачи для тренировки