Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 

Киллер-судоку

(Время: 4 сек. Память: 32 Мб Сложность: 82%)

Киллер-судоку – разновидность классического судоку.

В Киллер-судоку вводится новый элемент под названием «зона»: несколько выделенных пунктиром ячеек, сумма цифр в которых должна быть равна указанному сверху числу.

Правила:

  1. Заполните числами от 1 до 9 все строки, колонки и квадраты 3×3, как в классическом судоку.
  2. Сумма цифр в каждой зоне должна быть равна числу в левом верхнем углу этой зоны.
  3. Внутри одной строки, колонки, квадрата 3×3 или одной зоны каждую цифру можно использовать только один раз.

Входные данные

Входной файл INPUT.TXT состоит из двух таблиц размером 9×9. Первая таблица заполнена числами от 0 до 9, где 0 означает пустую клетку. Вторая таблица заполнена числами от 10 до 90, в зависимости от количества K зон. Далее в K строках идёт описание зон парами чисел: номер зоны и её сумма.

Выходные данные

В выходной файл OUTPUT.TXT выведите разгаданный Киллер-судоку в виде таблицы 9×9. Гарантируется, что всегда существует решение и причём единственное.

Пример

INPUT.TXTOUTPUT.TXT
10 7 4 0 0 9 0 0 0
8 0 6 0 5 2 0 9 0
0 0 0 0 0 0 3 0 2
0 2 0 0 0 0 0 8 5
0 8 0 2 0 1 0 0 4
0 0 0 0 3 0 0 1 9
0 1 8 0 0 3 0 2 0
0 0 0 6 0 0 8 5 0
5 0 2 0 9 0 0 0 3
10 10 11 12 13 14 14 15 16
10 11 11 12 17 18 18 15 16
10 19 20 20 17 21 21 22 22
23 19 24 24 25 26 27 27 22
23 23 28 28 25 26 29 29 29
30 30 31 31 32 26 33 33 33
30 30 34 34 32 35 36 37 38
39 39 39 40 40 35 36 37 37
39 41 42 42 42 35 36 43 43
10 18
11 13
12 7
13 1
14 14
15 15
16 15
17 13
18 3
19 7
20 16
21 9
22 11
23 20
24 10
25 13
26 10
27 14
28 7
29 14
30 18
31 15
32 7
33 12
34 13
35 18
36 21
37 8
38 6
39 21
40 8
41 6
42 12
43 10
2 7 4 3 1 9 5 6 8
8 3 6 4 5 2 1 9 7
1 5 9 7 8 6 3 4 2
3 2 1 9 7 4 6 8 5
9 8 5 2 6 1 7 3 4
6 4 7 8 3 5 2 1 9
7 1 8 5 4 3 9 2 6
4 9 3 6 2 7 8 5 1
5 6 2 1 9 8 4 7 3

Автор задачи

Владимир Игоревич Лукьянчиков

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]


 Язык программирования C++
 Решение олимпиадных задач
 Региональные олимпиады
 ЕГЭ по информатике
 Авторские задачи
 Тренировочные олимпиады
 Фёдор Меньшиков. Олимпиадные задачи по программированию, 2006
 Сборник задач В.И. Лукьянчикова
 Булева Алгебра
 Геометрия
 Динамическое программирование
 Комбинаторика
 Разбор строк
 Разное
 Разное 2
 Рекурсия, перебор
 Системы счисления
 Сортировка и последовательности
 Теория графов
 Формула
 Целочисленная арифметика
 Целочисленная арифметика 2
 Структуры данных
 Бинарный поиск
 Занимательная математика
 Занимательная математика 2
 Занимательная математика 3
 A. Адресация - 2
 B. Адресация - 3
 C. Адресация - 1
 D. Городок 2
 E. Игра с друзьями - 2
 F. Исследование
 G. Преграда
 H. Задание с матрицей
 I. Киллер-судоку
 J. Бросок в кольцо
 K. Исследовательская группа
 L. Падающий шарик
 M. Палиндромные диапазоны 1
 N. Палиндромные диапазоны 2
 O. Манускрипт
 P. Минимальное преобразование
 Q. Коробки в контейнере
 R. Маяки
 S. Поймай бабочку
 T. Точки на окружностях
 U. Исполнитель 5
 V. Параллельные процессы 2
 W. Код активации криптомодуля
 X. На уроке рисования
 Y. Сбой в квантовом тахометре
 Z. Лаборатория

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru