Модераторы: Akella

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Любой уровень Судоку за секунды, Всё включено 
:(
    Опции темы
LKhiger
  Дата 11.10.2009, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



С последней версией кода стало меньше, а решение достигается быстрее.

Так level-3 Судоку решатель выдаёт за секунду. level-4 Судоку выдаёт за 10 секунд....
Большиство газетных Судоку решаются за секунды, или доли секунды.

Также выдаёт правильные решения при неоднозначном ответе.

Попробуйте.


There is level 3 sudokuhaving 2 empty lines:

Sudoku Line

XXXXXXXXX
X7XXX6X3X
X3X72XX4X
7XXXX8XX1
6XX3X7XX5
5X91XXXXX
X8XX91X2X
X916XXX7X
XXXXXXXXX

Line 1:    | 9 | 6 | 2 | 8 | 3 | 4 | 1 | 5 | 7 | 
Line 2:    | 8 | 7 | 4 | 5 | 1 | 6 | 9 | 3 | 2 | 
Line 3:    | 1 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 8 | 
Line 4:    | 7 | 2 | 3 | 9 | 5 | 8 | 4 | 6 | 1 | 
Line 5:    | 6 | 1 | 8 | 3 | 4 | 7 | 2 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 7 | 8 | 3 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 3 | 7 | 4 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 1 | 9 | 

Our solver spent 11 second to find this single solution.

Now we make simple experiment: we'll change line 4 by remove 1 from source string:

7XXXX8XX1 ==> 7XXXX8XX0

We expect the same single solution, but not. 

Because we have 2 empty lines we'll have multiple solutions.

Ok, every solution will shown to you, but how ? 

Line 1: ........
Line 1: ........
..................
Line 1: ........
Line 2: ........
Line 2: ........
..................
Line 2: ........ etc.... 

How combine these lines in complete sudoku solutions ? 

For this I created the new conception of  (column) named Weight

The weight has to be unique for every single solution.  

Weight =  'Line 1:... ' ||  'Line 2:... ' ||.... ||  'Line 9:... '.

Then I made Group By and Order BY (Weight & Line##)

As Result:

Sudoku Line
XXXXXXXXX
X7XXX6X3X
X3X72XX4X
7XXXX8XXX
6XX3X7XX5
5X91XXXXX
X8XX91X2X
X916XXX7X
XXXXXXXXX
Line 1:    | 1 | 6 | 2 | 8 | 3 | 4 | 7 | 5 | 9 | 
Line 2:    | 9 | 7 | 4 | 5 | 1 | 6 | 8 | 3 | 2 | 
Line 3:    | 8 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 1 | 
Line 4:    | 7 | 1 | 3 | 9 | 5 | 8 | 2 | 6 | 4 | 
Line 5:    | 6 | 2 | 8 | 3 | 4 | 7 | 1 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 3 | 8 | 7 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 4 | 7 | 3 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 9 | 1 | 8 | 

Line 1:    | 1 | 6 | 2 | 8 | 3 | 4 | 7 | 5 | 9 | 
Line 2:    | 9 | 7 | 4 | 5 | 1 | 6 | 8 | 3 | 2 | 
Line 3:    | 8 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 1 | 
Line 4:    | 7 | 1 | 3 | 9 | 5 | 8 | 2 | 6 | 4 | 
Line 5:    | 6 | 2 | 8 | 3 | 4 | 7 | 9 | 1 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 3 | 8 | 7 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 4 | 7 | 3 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 1 | 9 | 8 | 

Line 1:    | 1 | 6 | 2 | 8 | 3 | 4 | 7 | 5 | 9 | 
Line 2:    | 9 | 7 | 4 | 5 | 1 | 6 | 8 | 3 | 2 | 
Line 3:    | 8 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 1 | 
Line 4:    | 7 | 2 | 3 | 9 | 5 | 8 | 1 | 6 | 4 | 
Line 5:    | 6 | 1 | 8 | 3 | 4 | 7 | 2 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 3 | 8 | 7 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 4 | 7 | 3 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 9 | 1 | 8 | 

Line 1:    | 1 | 6 | 2 | 8 | 3 | 4 | 9 | 5 | 7 | 
Line 2:    | 9 | 7 | 4 | 5 | 1 | 6 | 2 | 3 | 8 | 
Line 3:    | 8 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 1 | 
Line 4:    | 7 | 1 | 3 | 9 | 5 | 8 | 4 | 6 | 2 | 
Line 5:    | 6 | 2 | 8 | 3 | 4 | 7 | 1 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 7 | 8 | 3 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 3 | 7 | 4 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 1 | 9 | 

Line 1:    | 9 | 6 | 2 | 8 | 3 | 4 | 1 | 5 | 7 | 
Line 2:    | 8 | 7 | 4 | 5 | 1 | 6 | 2 | 3 | 9 | 
Line 3:    | 1 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 8 | 
Line 4:    | 7 | 1 | 3 | 9 | 5 | 8 | 4 | 6 | 2 | 
Line 5:    | 6 | 2 | 8 | 3 | 4 | 7 | 9 | 1 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 7 | 8 | 3 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 3 | 7 | 4 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 9 | 1 | 

Line 1:    | 9 | 6 | 2 | 8 | 3 | 4 | 1 | 5 | 7 | 
Line 2:    | 8 | 7 | 4 | 5 | 1 | 6 | 9 | 3 | 2 | 
Line 3:    | 1 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 8 | 
Line 4:    | 7 | 2 | 3 | 9 | 5 | 8 | 4 | 6 | 1 | 
Line 5:    | 6 | 1 | 8 | 3 | 4 | 7 | 2 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 7 | 8 | 3 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 3 | 7 | 4 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 1 | 9 |
 

Line 1:    | 9 | 6 | 2 | 8 | 3 | 4 | 7 | 5 | 1 | 
Line 2:    | 8 | 7 | 4 | 5 | 1 | 6 | 9 | 3 | 2 | 
Line 3:    | 1 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 8 | 
Line 4:    | 7 | 1 | 3 | 9 | 5 | 8 | 2 | 6 | 4 | 
Line 5:    | 6 | 2 | 8 | 3 | 4 | 7 | 1 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 3 | 8 | 7 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 4 | 7 | 3 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 1 | 9 | 

Line 1:    | 9 | 6 | 2 | 8 | 3 | 4 | 7 | 5 | 1 | 
Line 2:    | 8 | 7 | 4 | 5 | 1 | 6 | 9 | 3 | 2 | 
Line 3:    | 1 | 3 | 5 | 7 | 2 | 9 | 6 | 4 | 8 | 
Line 4:    | 7 | 2 | 3 | 9 | 5 | 8 | 1 | 6 | 4 | 
Line 5:    | 6 | 1 | 8 | 3 | 4 | 7 | 2 | 9 | 5 | 
Line 6:    | 5 | 4 | 9 | 1 | 6 | 2 | 3 | 8 | 7 | 
Line 7:    | 3 | 8 | 7 | 4 | 9 | 1 | 5 | 2 | 6 | 
Line 8:    | 2 | 9 | 1 | 6 | 8 | 5 | 4 | 7 | 3 | 
Line 9:    | 4 | 5 | 6 | 2 | 7 | 3 | 8 | 1 | 9 | 

we got 8 different solutions in 1 minute. 

Lenny

P.S. Code in an attachment

Это сообщение отредактировал(а) LKhiger - 11.10.2009, 20:17

Присоединённый файл ( Кол-во скачиваний: 16 )
Присоединённый файл  Absolute_SUDOKU_Solver_v5_Weight_1_.txt 29,45 Kb
PM MAIL   Вверх
LKhiger
  Дата 13.10.2009, 05:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Very Hard Sudoku (1 sec):

Код

Sudoku Line

X6XX5XX2X
XXX3XXX9X
7XX6XXX1X
XX6X3X4XX
XX4X7X1XX
XX5X9X8XX
X4XXX1XX6
X3XXX8XXX
X2XX4XX5X

Line 1: | 8 | 6 | 1 | 4 | 5 | 9 | 7 | 2 | 3 | 
Line 2: | 4 | 5 | 2 | 3 | 1 | 7 | 6 | 9 | 8 | 
Line 3: | 7 | 9 | 3 | 6 | 8 | 2 | 5 | 1 | 4 | 
Line 4: | 2 | 1 | 6 | 8 | 3 | 5 | 4 | 7 | 9 | 
Line 5: | 9 | 8 | 4 | 2 | 7 | 6 | 1 | 3 | 5 | 
Line 6: | 3 | 7 | 5 | 1 | 9 | 4 | 8 | 6 | 2 | 
Line 7: | 5 | 4 | 7 | 9 | 2 | 1 | 3 | 8 | 6 | 
Line 8: | 1 | 3 | 9 | 5 | 6 | 8 | 2 | 4 | 7 | 
Line 9: | 6 | 2 | 8 | 7 | 4 | 3 | 9 | 5 | 1 |
  


You can find:

http://www.saidwhat.co.uk/veryhard.php

Fiendish Sudoku (5 sec):

Код

Sudoku Line

XXXXX5X29
63XXXXXXX
XXX4X8XXX
XXXX9X5X2
XX2X8X6XX
1X7X3XXXX
XXX6X1XXX
XXXXXXX74
58X2XXXXX

Line 1: | 4 | 7 | 1 | 3 | 6 | 5 | 8 | 2 | 9 | 
Line 2: | 6 | 3 | 8 | 9 | 2 | 7 | 4 | 5 | 1 | 
Line 3: | 2 | 9 | 5 | 4 | 1 | 8 | 7 | 6 | 3 | 
Line 4: | 8 | 4 | 3 | 7 | 9 | 6 | 5 | 1 | 2 | 
Line 5: | 9 | 5 | 2 | 1 | 8 | 4 | 6 | 3 | 7 | 
Line 6: | 1 | 6 | 7 | 5 | 3 | 2 | 9 | 4 | 8 | 
Line 7: | 7 | 2 | 9 | 6 | 4 | 1 | 3 | 8 | 5 | 
Line 8: | 3 | 1 | 6 | 8 | 5 | 9 | 2 | 7 | 4 | 
Line 9: | 5 | 8 | 4 | 2 | 7 | 3 | 1 | 9 | 6 | 
 

You can find

http://www.saidwhat.co.uk/fiendish.php

Lenny[U][/U]
PM MAIL   Вверх
LKhiger
  Дата 14.10.2009, 03:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Puzzletype: Slider Symmetrical Sudoku
Startnumbers: 28
Difficulty: Very hard <-- 1 sec --> 


Код

Sudoku Line

4XXXXXXX7
X23X7XXXX
XXX8X36XX
XX6X587XX
X8X4X7X1X
XX139X5XX
XX89X4X5X
XXXX1XX6X
3XXXXXXX9

Line 1: | 4 | 6 | 9 | 5 | 2 | 1 | 8 | 3 | 7 | 
Line 2: | 8 | 2 | 3 | 6 | 7 | 9 | 1 | 4 | 5 | 
Line 3: | 1 | 5 | 7 | 8 | 4 | 3 | 6 | 9 | 2 | 
Line 4: | 9 | 3 | 6 | 1 | 5 | 8 | 7 | 2 | 4 | 
Line 5: | 5 | 8 | 2 | 4 | 6 | 7 | 9 | 1 | 3 | 
Line 6: | 7 | 4 | 1 | 3 | 9 | 2 | 5 | 8 | 6 | 
Line 7: | 6 | 7 | 8 | 9 | 3 | 4 | 2 | 5 | 1 | 
Line 8: | 2 | 9 | 4 | 7 | 1 | 5 | 3 | 6 | 8 | 
Line 9: | 3 | 1 | 5 | 2 | 8 | 6 | 4 | 7 | 9 |  


Showing puzzle number: 4137865
Puzzletype: Optimal Sudoku
Startnumbers: 25
Difficulty: Super hard (554) <-- 3 sec --> 


http://www.menneske.no/sudoku/eng/ra...uperhardplus=1

Код

Sudoku Line

24XXX61XX
XXX7XX5XX
XXXXXX9XX
1XXX8X4X9
XX4XXXX2X
38XX4XXX5
XX3XXXXXX
X7XX29X8X
91XX3XXXX

Line 1: | 2 | 4 | 9 | 8 | 5 | 6 | 1 | 3 | 7 | 
Line 2: | 8 | 3 | 1 | 7 | 9 | 4 | 5 | 6 | 2 | 
Line 3: | 7 | 5 | 6 | 2 | 1 | 3 | 9 | 4 | 8 | 
Line 4: | 1 | 6 | 2 | 3 | 8 | 5 | 4 | 7 | 9 | 
Line 5: | 5 | 9 | 4 | 6 | 7 | 1 | 8 | 2 | 3 | 
Line 6: | 3 | 8 | 7 | 9 | 4 | 2 | 6 | 1 | 5 | 
Line 7: | 4 | 2 | 3 | 5 | 6 | 8 | 7 | 9 | 1 | 
Line 8: | 6 | 7 | 5 | 1 | 2 | 9 | 3 | 8 | 4 | 
Line 9: | 9 | 1 | 8 | 4 | 3 | 7 | 2 | 5 | 6 |  



Lenny
PM MAIL   Вверх
LKhiger
  Дата 15.10.2009, 04:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Elegant Sudoku. 

With 2 empty regions. Starting with empty region.
Startnumbers: 27. <-- 2 sec -->:


Sudoku Line

XXX7XXX85
XXXX45XX7
XXXX8123X
X8XXXXX9X
XX3X2X4XX
X9XXXXX6X
X7651XXXX
5XX47XXXX
12XXX3XXX

Код

Line 1: | 2 | 4 | 1 | 7 | 3 | 9 | 6 | 8 | 5 | 
Line 2: | 3 | 6 | 8 | 2 | 4 | 5 | 9 | 1 | 7 | 
Line 3: | 9 | 5 | 7 | 6 | 8 | 1 | 2 | 3 | 4 | 
Line 4: | 7 | 8 | 5 | 3 | 6 | 4 | 1 | 9 | 2 | 
Line 5: | 6 | 1 | 3 | 9 | 2 | 7 | 4 | 5 | 8 | 
Line 6: | 4 | 9 | 2 | 1 | 5 | 8 | 7 | 6 | 3 | 
Line 7: | 8 | 7 | 6 | 5 | 1 | 2 | 3 | 4 | 9 | 
Line 8: | 5 | 3 | 9 | 4 | 7 | 6 | 8 | 2 | 1 | 
Line 9: | 1 | 2 | 4 | 8 | 9 | 3 | 5 | 7 | 6 | 


Lenny
PM MAIL   Вверх
LKhiger
  Дата 17.10.2009, 03:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Минимальная заполненная Судоку.

Самая первая в списке всех заполненных Судоку.

Цитата
Line 1: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 
Line 2: | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 2 | 3 | 
Line 3: | 7 | 8 | 9 | 1 | 2 | 3 | 4 | 5 | 6 | 
Line 4: | 2 | 1 | 4 | 3 | 6 | 5 | 8 | 9 | 7 | 
Line 5: | 3 | 6 | 5 | 8 | 9 | 7 | 2 | 1 | 4 | 
Line 6: | 8 | 9 | 7 | 2 | 1 | 4 | 3 | 6 | 5 | 
Line 7: | 5 | 3 | 1 | 6 | 4 | 2 | 9 | 7 | 8 | 
Line 8: | 6 | 4 | 2 | 9 | 7 | 8 | 5 | 3 | 1 | 
Line 9: | 9 | 7 | 8 | 5 | 3 | 1 | 6 | 4 | 2 |


Lenny
PM MAIL   Вверх
Волшебник
Дата 20.10.2009, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 13.9.2009

Репутация: нет
Всего: нет



Цитата(LKhiger @ 15.10.2009,  04:47)
Elegant Sudoku. 

With 2 empty regions. Starting with empty region.
Startnumbers: 27. <-- 2 sec -->:


Sudoku Line

XXX7XXX85
XXXX45XX7
XXXX8123X
X8XXXXX9X
XX3X2X4XX
X9XXXXX6X
X7651XXXX
5XX47XXXX
12XXX3XXX

Код

Line 1: | 2 | 4 | 1 | 7 | 3 | 9 | 6 | 8 | 5 | 
Line 2: | 3 | 6 | 8 | 2 | 4 | 5 | 9 | 1 | 7 | 
Line 3: | 9 | 5 | 7 | 6 | 8 | 1 | 2 | 3 | 4 | 
Line 4: | 7 | 8 | 5 | 3 | 6 | 4 | 1 | 9 | 2 | 
Line 5: | 6 | 1 | 3 | 9 | 2 | 7 | 4 | 5 | 8 | 
Line 6: | 4 | 9 | 2 | 1 | 5 | 8 | 7 | 6 | 3 | 
Line 7: | 8 | 7 | 6 | 5 | 1 | 2 | 3 | 4 | 9 | 
Line 8: | 5 | 3 | 9 | 4 | 7 | 6 | 8 | 2 | 1 | 
Line 9: | 1 | 2 | 4 | 8 | 9 | 3 | 5 | 7 | 6 | 


Lenny

Я не понял и что с  этим,  длинным как змея, кодом делать, куда вставлять?  smile 
PM MAIL   Вверх
LKhiger
Дата 20.10.2009, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Цитата(Волшебник @ 20.10.2009,  13:04)
Цитата(LKhiger @ 15.10.2009,  04:47)
Elegant Sudoku. 

With 2 empty regions. Starting with empty region.
Startnumbers: 27. <-- 2 sec -->:


Sudoku Line

XXX7XXX85
XXXX45XX7
XXXX8123X
X8XXXXX9X
XX3X2X4XX
X9XXXXX6X
X7651XXXX
5XX47XXXX
12XXX3XXX

Код

Line 1: | 2 | 4 | 1 | 7 | 3 | 9 | 6 | 8 | 5 | 
Line 2: | 3 | 6 | 8 | 2 | 4 | 5 | 9 | 1 | 7 | 
Line 3: | 9 | 5 | 7 | 6 | 8 | 1 | 2 | 3 | 4 | 
Line 4: | 7 | 8 | 5 | 3 | 6 | 4 | 1 | 9 | 2 | 
Line 5: | 6 | 1 | 3 | 9 | 2 | 7 | 4 | 5 | 8 | 
Line 6: | 4 | 9 | 2 | 1 | 5 | 8 | 7 | 6 | 3 | 
Line 7: | 8 | 7 | 6 | 5 | 1 | 2 | 3 | 4 | 9 | 
Line 8: | 5 | 3 | 9 | 4 | 7 | 6 | 8 | 2 | 1 | 
Line 9: | 1 | 2 | 4 | 8 | 9 | 3 | 5 | 7 | 6 | 


Lenny

Я не понял и что с  этим,  длинным как змея, кодом делать, куда вставлять?  smile

Спасибо за вопрос, г-н Волшебник. Теперь я знаю, что есть живые и здесь.

Код длинный. Но ведь и задача не из простых.
Он у меня работает в QDOBC, SPUFI, где угодно. Ведь он основан на SYSIBM.SYSDUMMY1.

Вы должны заменить Source part, где "0" - свободные ячейки в Судоку и запустить code в работу.

С уважением Lenny Khiger. smile  smile  smile 
PM MAIL   Вверх
LKhiger
  Дата 20.10.2009, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Необходимые пояснения:

В общем, можно сказать, что решение Судоку программным путём - это решение системы с неизвестным числом неизвестных (обычно не меньше 60 неизвестных) значения которых находятся в интервале [1,9].

Я решил эту задачу 7 способами. 
Имеется 7 версий решения. 
Вам я представил наиболее быстрый из всех.

Lenny Khiger, ADSPA&VP@C.
PM MAIL   Вверх
LKhiger
  Дата 21.10.2009, 04:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Today "Metro" NY page 23:

Easy - 0 sec

Код

Sudoku Line

XXX8X4X36
XXXXX1X9X
XXXXXX542
XX7X19XX3
X84XXX21X
6XX32X7XX
239XXXXXX
X4X5XXXXX
71X6X3XXX

Line 1: | 9 | 5 | 2 | 8 | 7 | 4 | 1 | 3 | 6 | 
Line 2: | 4 | 6 | 3 | 2 | 5 | 1 | 8 | 9 | 7 | 
Line 3: | 1 | 7 | 8 | 9 | 3 | 6 | 5 | 4 | 2 | 
Line 4: | 5 | 2 | 7 | 4 | 1 | 9 | 6 | 8 | 3 | 
Line 5: | 3 | 8 | 4 | 7 | 6 | 5 | 2 | 1 | 9 | 
Line 6: | 6 | 9 | 1 | 3 | 2 | 8 | 7 | 5 | 4 | 
Line 7: | 2 | 3 | 9 | 1 | 8 | 7 | 4 | 6 | 5 | 
Line 8: | 8 | 4 | 6 | 5 | 9 | 2 | 3 | 7 | 1 | 
Line 9: | 7 | 1 | 5 | 6 | 4 | 3 | 9 | 2 | 8 |  


Hard - 5 sec

Код

Sudoku Line

1X47XXXXX
XX8X64X5X
5XX81XXXX
XX9X27XX4
8XXXXXXX5
7XX68X9XX
XXXX76XX2
X6X49X1XX
XXXXX84X6

Line 1: | 1 | 2 | 4 | 7 | 5 | 3 | 6 | 8 | 9 | 
Line 2: | 3 | 7 | 8 | 9 | 6 | 4 | 2 | 5 | 1 | 
Line 3: | 5 | 9 | 6 | 8 | 1 | 2 | 3 | 4 | 7 | 
Line 4: | 6 | 3 | 9 | 5 | 2 | 7 | 8 | 1 | 4 | 
Line 5: | 8 | 1 | 2 | 3 | 4 | 9 | 7 | 6 | 5 | 
Line 6: | 7 | 4 | 5 | 6 | 8 | 1 | 9 | 2 | 3 | 
Line 7: | 4 | 8 | 3 | 1 | 7 | 6 | 5 | 9 | 2 | 
Line 8: | 2 | 6 | 7 | 4 | 9 | 5 | 1 | 3 | 8 | 
Line 9: | 9 | 5 | 1 | 2 | 3 | 8 | 4 | 7 | 6 |  

Lenny
PM MAIL   Вверх
LKhiger
  Дата 24.10.2009, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Friday 10/23/09 "AM" NY page 32, level-4 <-- 10 sec -->

Код

Source (line, sudoku_str) as 
(
select 1, '000100000'
  from sysibm.sysdummy1
union all
select 2, '000609500'
  from sysibm.sysdummy1
union all
select 3, '302000004'
  from sysibm.sysdummy1
union all 
select 4, '001080700'
  from sysibm.sysdummy1
union all
select 5, '600000002'
  from sysibm.sysdummy1
union all
select 6, '008030900'
  from sysibm.sysdummy1
union all
select 7, '500000601'
  from sysibm.sysdummy1
union all
select 8, '006300200'
  from sysibm.sysdummy1
union all
select 9, '800007400'
  from sysibm.sysdummy1
)

Result:

Код

Sudoku Line

XXX1XXXXX
XXX6X95XX
3X2XXXXX4
XX1X8X7XX
6XXXXXXX2
XX8X3X9XX
5XXXXX6X1
XX63XX2XX
8XXXX74XX

Line 1: | 7 | 6 | 5 | 1 | 4 | 3 | 8 | 2 | 9 | 
Line 2: | 1 | 8 | 4 | 6 | 2 | 9 | 5 | 3 | 7 | 
Line 3: | 3 | 9 | 2 | 8 | 7 | 5 | 1 | 6 | 4 | 
Line 4: | 9 | 3 | 1 | 5 | 8 | 2 | 7 | 4 | 6 | 
Line 5: | 6 | 5 | 7 | 9 | 1 | 4 | 3 | 8 | 2 | 
Line 6: | 2 | 4 | 8 | 7 | 3 | 6 | 9 | 1 | 5 | 
Line 7: | 5 | 2 | 3 | 4 | 9 | 8 | 6 | 7 | 1 | 
Line 8: | 4 | 7 | 6 | 3 | 5 | 1 | 2 | 9 | 8 | 
Line 9: | 8 | 1 | 9 | 2 | 6 | 7 | 4 | 5 | 3 |

Friday 10/23/09  "Metro" NY page 20 HARD <-- 1 sec -->

Код

Source (line, sudoku_str) as 
(
select 1, '000780010'
  from sysibm.sysdummy1
union all
select 2, '000305860'
  from sysibm.sysdummy1
union all
select 3, '080021300'
  from sysibm.sysdummy1
union all 
select 4, '017000500'
  from sysibm.sysdummy1
union all
select 5, '800000006'
  from sysibm.sysdummy1
union all
select 6, '004000120'
  from sysibm.sysdummy1
union all
select 7, '001260080'
  from sysibm.sysdummy1
union all
select 8, '043809000'
  from sysibm.sysdummy1
union all
select 9, '020034000'
  from sysibm.sysdummy1
)


Result:

Код

Sudoku Line

XXX78XX1X
XXX3X586X
X8XX213XX
X17XXX5XX
8XXXXXXX6
XX4XXX12X
XX126XX8X
X438X9XXX
X2XX34XXX

Line 1: | 5 | 3 | 2 | 7 | 8 | 6 | 9 | 1 | 4 | 
Line 2: | 1 | 7 | 9 | 3 | 4 | 5 | 8 | 6 | 2 | 
Line 3: | 4 | 8 | 6 | 9 | 2 | 1 | 3 | 5 | 7 | 
Line 4: | 2 | 1 | 7 | 6 | 9 | 3 | 5 | 4 | 8 | 
Line 5: | 8 | 9 | 5 | 4 | 1 | 2 | 7 | 3 | 6 | 
Line 6: | 3 | 6 | 4 | 5 | 7 | 8 | 1 | 2 | 9 | 
Line 7: | 9 | 5 | 1 | 2 | 6 | 7 | 4 | 8 | 3 | 
Line 8: | 6 | 4 | 3 | 8 | 5 | 9 | 2 | 7 | 1 | 
Line 9: | 7 | 2 | 8 | 1 | 3 | 4 | 6 | 9 | 5 |


Lenny smile 

Это сообщение отредактировал(а) LKhiger - 24.10.2009, 22:35
PM MAIL   Вверх
LKhiger
  Дата 31.10.2009, 06:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Кому теперь нужны Судоки ?
Зачем нам голову ломать ?
Не вижу в них большого проку,
Их может СУБД решать !
 smile  smile  smile 


Lenny

Это сообщение отредактировал(а) LKhiger - 14.11.2009, 05:41
PM MAIL   Вверх
LKhiger
  Дата 14.11.2009, 05:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



....Friday 13....  smile  smile  smile  smile  
11/13/09 "Metro" NY page 25 HARD --> 1 sec <--
 

Код
Source (line, sudoku_str) as
(
select 1, '031004000'
  from sysibm.sysdummy1
union all
select 2, '900016000'
  from sysibm.sysdummy1
union all
select 3, '006730000'
  from sysibm.sysdummy1
union all
select 4, '300090205'
  from sysibm.sysdummy1
union all
select 5, '084000730'
  from sysibm.sysdummy1
union all
select 6, '209070001'
  from sysibm.sysdummy1
union all
select 7, '000057900'
  from sysibm.sysdummy1
union all
select 8, '000360004'
  from sysibm.sysdummy1
union all
select 9, '000800310'
  from sysibm.sysdummy1


Result:

Цитата
Sudoku Line

X31XX4XXX
9XXX16XXX
XX673XXXX
3XXX9X2X5
X84XXX73X
2X9X7XXX1
XXXX579XX
XXX36XXX4
XXX8XX31X

Line 1:    | 7 | 3 | 1 | 9 | 8 | 4 | 6 | 5 | 2 |
Line 2:    | 9 | 5 | 8 | 2 | 1 | 6 | 4 | 7 | 3 |
Line 3:    | 4 | 2 | 6 | 7 | 3 | 5 | 1 | 9 | 8 |
Line 4:    | 3 | 1 | 7 | 4 | 9 | 8 | 2 | 6 | 5 |
Line 5:    | 5 | 8 | 4 | 6 | 2 | 1 | 7 | 3 | 9 |
Line 6:    | 2 | 6 | 9 | 5 | 7 | 3 | 8 | 4 | 1 |
Line 7:    | 8 | 4 | 3 | 1 | 5 | 7 | 9 | 2 | 6 |
Line 8:    | 1 | 7 | 2 | 3 | 6 | 9 | 5 | 8 | 4 |
Line 9:    | 6 | 9 | 5 | 8 | 4 | 2 | 3 | 1 | 7 |


Lenny
PM MAIL   Вверх
LKhiger
  Дата 14.11.2009, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



Мне удалось сократить размер решателя Судоку почти на 5К не уменьшая его производительность.

Отдаю вам эту версию на тестирование. 
Кстати, вчерашнее Судоку была решена на нём. 
Скорость, как вы видите - прекрасная.


Лёня Хигер.

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  SUDOKU_Solver_Short_v2_1_.txt 24,19 Kb
PM MAIL   Вверх
LKhiger
  Дата 27.11.2009, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



New Version of XHard Sudoku Solver 

ThanksGiving Sudokus && New Version of XHard Solver 

Код
Source (line, sudoku_str) as 
(
select 1, '100086000'
  from sysibm.sysdummy1
union all
select 2, '090201030'
  from sysibm.sysdummy1
union all
select 3, '680000000'
  from sysibm.sysdummy1
union all 
select 4, '008000900'
  from sysibm.sysdummy1
union all
select 5, '000875000'
  from sysibm.sysdummy1
union all
select 6, '004000100'
  from sysibm.sysdummy1
union all
select 7, '000300018'
  from sysibm.sysdummy1
union all
select 8, '070104020'
  from sysibm.sysdummy1
union all
select 9, '000020003'
  from sysibm.sysdummy1
)


Цитата
Line 1: | 1 | 3 | 2 | 9 | 8 | 6 | 7 | 4 | 5 | 
Line 2: | 4 | 9 | 7 | 2 | 5 | 1 | 8 | 3 | 6 | 
Line 3: | 6 | 8 | 5 | 7 | 4 | 3 | 2 | 9 | 1 | 
Line 4: | 3 | 6 | 8 | 4 | 1 | 2 | 9 | 5 | 7 | 
Line 5: | 2 | 1 | 9 | 8 | 7 | 5 | 3 | 6 | 4 | 
Line 6: | 7 | 5 | 4 | 6 | 3 | 9 | 1 | 8 | 2 | 
Line 7: | 5 | 2 | 6 | 3 | 9 | 7 | 4 | 1 | 8 | 
Line 8: | 8 | 7 | 3 | 1 | 6 | 4 | 5 | 2 | 9 | 
Line 9: | 9 | 4 | 1 | 5 | 2 | 8 | 6 | 7 | 3 |


Код
Source (line, sudoku_str) as 
(
select 1, '670200000'
  from sysibm.sysdummy1
union all
select 2, '204036070'
  from sysibm.sysdummy1
union all
select 3, '005400000'
  from sysibm.sysdummy1
union all 
select 4, '080000046'
  from sysibm.sysdummy1
union all
select 5, '007104800'
  from sysibm.sysdummy1
union all
select 6, '410000050'
  from sysibm.sysdummy1
union all
select 7, '000003400'
  from sysibm.sysdummy1
union all
select 8, '040910605'
  from sysibm.sysdummy1
union all
select 9, '000002039'
  from sysibm.sysdummy1
)


Цитата
Line 1: | 6 | 7 | 1 | 2 | 9 | 5 | 3 | 8 | 4 | 
Line 2: | 2 | 9 | 4 | 8 | 3 | 6 | 5 | 7 | 1 | 
Line 3: | 8 | 3 | 5 | 4 | 7 | 1 | 9 | 6 | 2 | 
Line 4: | 3 | 8 | 9 | 5 | 2 | 7 | 1 | 4 | 6 | 
Line 5: | 5 | 2 | 7 | 1 | 6 | 4 | 8 | 9 | 3 | 
Line 6: | 4 | 1 | 6 | 3 | 8 | 9 | 2 | 5 | 7 | 
Line 7: | 9 | 6 | 2 | 7 | 5 | 3 | 4 | 1 | 8 | 
Line 8: | 7 | 4 | 3 | 9 | 1 | 8 | 6 | 2 | 5 | 
Line 9: | 1 | 5 | 8 | 6 | 4 | 2 | 7 | 3 | 9 |
 

Lenny

P.S. 
The New Version of Extra Hard Sudoku's Solver in attachment:


Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  SUDOKU_Short_XHARD_V2_1_.txt 22,57 Kb
PM MAIL   Вверх
LKhiger
  Дата 5.12.2009, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 7.9.2009

Репутация: 2
Всего: 2



3 Sudoku: Very hard + Level-3 + Level-4: total time = 5 seconds:

Код
Source (line, sudoku_str) as 
(
select 1, '000680790'
  from sysibm.sysdummy1
union all
select 2, '076009000'
  from sysibm.sysdummy1
union all
select 3, '030002804'
  from sysibm.sysdummy1
union all 
select 4, '020000040'
  from sysibm.sysdummy1
union all 
select 5, '501000203'
  from sysibm.sysdummy1
union all
select 6, '080000010'
  from sysibm.sysdummy1
union all
select 7, '408300050'
  from sysibm.sysdummy1
union all
select 8, '000800470'
  from sysibm.sysdummy1
union all
select 9, '017045000'
  from sysibm.sysdummy1
)


Цитата
Line 1: | 2 | 4 | 5 | 6 | 8 | 3 | 7 | 9 | 1 | 
Line 2: | 8 | 7 | 6 | 4 | 1 | 9 | 5 | 3 | 2 | 
Line 3: | 1 | 3 | 9 | 5 | 7 | 2 | 8 | 6 | 4 | 
Line 4: | 9 | 2 | 3 | 1 | 5 | 8 | 6 | 4 | 7 | 
Line 5: | 5 | 6 | 1 | 7 | 9 | 4 | 2 | 8 | 3 | 
Line 6: | 7 | 8 | 4 | 2 | 3 | 6 | 9 | 1 | 5 | 
Line 7: | 4 | 9 | 8 | 3 | 2 | 7 | 1 | 5 | 6 | 
Line 8: | 3 | 5 | 2 | 8 | 6 | 1 | 4 | 7 | 9 | 
Line 9: | 6 | 1 | 7 | 9 | 4 | 5 | 3 | 2 | 8 |
  

Код
Source (line, sudoku_str) as 
(
select 1, '700020003'
  from sysibm.sysdummy1
union all
select 2, '020467090'
  from sysibm.sysdummy1
union all
select 3, '000000800'
  from sysibm.sysdummy1
union all 
select 4, '004000002'
  from sysibm.sysdummy1
union all 
select 5, '000090000'
  from sysibm.sysdummy1
union all
select 6, '200003600'
  from sysibm.sysdummy1
union all
select 7, '003000000'
  from sysibm.sysdummy1
union all
select 8, '080719030'
  from sysibm.sysdummy1
union all
select 9, '602030001'
  from sysibm.sysdummy1
)


Цитата
Line 1: | 7 | 5 | 1 | 9 | 2 | 8 | 4 | 6 | 3 | 
Line 2: | 3 | 2 | 8 | 4 | 6 | 7 | 1 | 9 | 5 | 
Line 3: | 9 | 4 | 6 | 3 | 5 | 1 | 8 | 2 | 7 | 
Line 4: | 8 | 3 | 4 | 1 | 7 | 6 | 9 | 5 | 2 | 
Line 5: | 5 | 6 | 7 | 2 | 9 | 4 | 3 | 1 | 8 | 
Line 6: | 2 | 1 | 9 | 5 | 8 | 3 | 6 | 7 | 4 | 
Line 7: | 1 | 7 | 3 | 6 | 4 | 2 | 5 | 8 | 9 | 
Line 8: | 4 | 8 | 5 | 7 | 1 | 9 | 2 | 3 | 6 | 
Line 9: | 6 | 9 | 2 | 8 | 3 | 5 | 7 | 4 | 1 | 
  

Код
Source (line, sudoku_str) as 
(
select 1, '000000000'
  from sysibm.sysdummy1
union all
select 2, '703100065'
  from sysibm.sysdummy1
union all
select 3, '010689000'
  from sysibm.sysdummy1
union all 
select 4, '008002700'
  from sysibm.sysdummy1
union all 
select 5, '250000083'
  from sysibm.sysdummy1
union all
select 6, '006400000'
  from sysibm.sysdummy1
union all
select 7, '000346070'
  from sysibm.sysdummy1
union all
select 8, '300000501'
  from sysibm.sysdummy1
union all
select 9, '000000000'
  from sysibm.sysdummy1
)


Цитата
Line 1: | 6 | 2 | 9 | 7 | 5 | 3 | 8 | 1 | 4 | 
Line 2: | 7 | 8 | 3 | 1 | 2 | 4 | 9 | 6 | 5 | 
Line 3: | 4 | 1 | 5 | 6 | 8 | 9 | 3 | 2 | 7 | 
Line 4: | 1 | 4 | 8 | 5 | 3 | 2 | 7 | 9 | 6 | 
Line 5: | 2 | 5 | 7 | 9 | 6 | 1 | 4 | 8 | 3 | 
Line 6: | 9 | 3 | 6 | 4 | 7 | 8 | 1 | 5 | 2 | 
Line 7: | 5 | 9 | 1 | 3 | 4 | 6 | 2 | 7 | 8 | 
Line 8: | 3 | 6 | 2 | 8 | 9 | 7 | 5 | 4 | 1 | 
Line 9: | 8 | 7 | 4 | 2 | 1 | 5 | 6 | 3 | 9 |
  

Lenny
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие СУБД | Следующая тема »


 




[ Время генерации скрипта: 0.1593 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.