Моё меню Общее меню Сообщество Правила форума Все прочитано
Вернуться   uForum.uz > БЕСЕДКА > Разминка для мозгов
Сообщения за день Поиск
Знаете ли Вы, что ...
...нарушения правил форума наказываются. Старайтесь их не нарушать.
<< Предыдущий совет - Случайный совет - Следующий совет >>

Разминка для мозгов Загадки, задачи, головоломки - тренируем мозг


 
 
Опции темы Опции просмотра
Старый 25.01.2011 20:57   #16  
Known ID Group uParty Member Ultimate
Аватар для JH
Оффлайн
Сообщений: 10,921
+ 3,666  10,931/4,676
– 584  286/214

Uzbekistan
К автору задачи.
Для начала надо попробовать решить задачу без полного перебора. Пройдемся по всем 81 клеточкам (естественно, незанятым). Для каждой быстренько заводим массив из 9 целых чисел, заполняем его единичками. Потом проходим по всем остальным клеткам квадрата 3х3, в котором находится рассматриваемая клетка, если она не пустая и равна n, то заменяем n-й элемент массива ноликом. Потом то же самое делаем с той строкой, в которой находится текущая клетка, и со столбцом, соответственно. После этой операции суммируем массив, если его сумма равна единице, то вариантов заполнения этой клетки ровно 1, ищем единственный не равный нулю элемент массива и проставляем значение в клетку. Если сумма массива оказалась больше единицы, пропускаем эту клетку. И так проходим по всем 81 клеткам много раз до тех пор, пока алгоритм работает.
После того, как "очевидных" клеток не осталось, придется включать алгоритмы перебора, я в них никогда не был силен.
Ответить 
"+" от:
 




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Advertisement System V2.5 By Branden
OOO «Единый интегратор UZINFOCOM»


Новые 24 часа Кто на форуме Новички Поиск Кабинет Все прочитано Вверх