Модераторы: 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   Вверх
Zloxa
Дата 7.12.2009, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

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



LKhiger, Дружище,... При всем моем уважении к тебе и к твоему делу.... но не попутал ли ты блоги с форумом? Может тебе лучше блог создать? Форум как бы подразумевает наличие нескольких участников в обсуждении..... иначе это выглядит просто нелепо.


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
LKhiger
  Дата 9.12.2009, 06:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Zloxa @ 7.12.2009,  14:30)
LKhiger, Дружище,... При всем моем уважении к тебе и к твоему делу.... но не попутал ли ты блоги с форумом? Может тебе лучше блог создать? Форум как бы подразумевает наличие нескольких участников в обсуждении..... иначе это выглядит просто нелепо.

Ты прав, дружище Zloxa !

Я всё перепутал. 

Думал, что  smile здесь настоящие DB2ушники собрались smile , а не начинающие программеры, которые не могут ни оценить алгоритма, ни даже воспользоваться готовым подарком.

Увы мне !  smile 

Но, слава богу, на других форумах качают мой код.

Собственно для того, чтобы качали я и открываю топики на разных форумах.

С уважением, Лёня Х ! smile 


PM MAIL   Вверх
Zloxa
Дата 9.12.2009, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

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



Цитата(LKhiger @  9.12.2009,  06:20 Найти цитируемый пост)
Думал

Бывает smile


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
LKhiger
  Дата 9.12.2009, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Zloxa @ 9.12.2009,  10:07)
Цитата(LKhiger @  9.12.2009,  06:20 Найти цитируемый пост)
Думал

Бывает smile

А где вы все кучкуетесь ? smile 

А то мы ищем русский аутсорсинг. smile  smile  smile  
Будем знать что из вашего куста брать материал не надо.... smile 

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


Шустрый
*


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

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



From Long query to short select from view[/size]

--- This one you have to execute if you want to change table ---
Код
drop table Sd_Source;


--- Execute this one time when you create the table, or if you want recreate table ---
--- 1---.

Код
create table Sd_Source 
(sd_id    integer    not null,
 sd_Lnum  integer    not null,
 sd_SLine Varchar(9) not null, 
 get_id  integer,
 ins_tms timestamp not null with default);


--- 2---.
Код
CREATE UNIQUE INDEX IX_Source 
ON Sd_Source (sd_id ASC, sd_Lnum asc) CLUSTER;


--- Don't need if you don't want to change the view ---
Код
drop view SDVW_SOLUTION;


--- Now you have to create view (don't worry if you have warning message) (Code in attachment): ---
Код
create view SDVW_Solution 
(Sudoku_Solution, Source_id, Source_line) as
with.... (get from attachment)....



These operations are required any time when you add the new Sudoku which you want to solve:

--- Any time when you add the new sudoku puzzle to the Sd_Source table 
you can use following query, or any query which you can create, for insert into Sd_Source : ---


Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '080100920' 
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '000005000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '024000380'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '091003000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '060000040'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '000800290'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '035000760'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '000500000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '079006010'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source
);

--- If you want to solve sudoku with sd_id = K <= max(sd_id) you have to: ---

Код
update Sd_Source  
   set get_id = K
where ins_tms = (select max(ins_tms) from Sd_Source);


---If Sd_Source table is not empty you can get sudoku solution from the view, using this: --- 
select sudoku_solution from SDVW_SOLUTION

--- or with query
Код
select * from SDVW_SOLUTION


Lenny

P.S. All logics and P/L code you can get from attachment....

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


Шустрый
*


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

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



NY Post Sudoku Difficult #1400 << 1 sec >>

Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '000000000' 
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '204705308'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '060308010'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '003000500'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '950000036'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '006000700'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '080103050'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '407809601'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '000000000' 
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);

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


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


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



LKhiger, я вот не пойму, ты с кем тут общаешься smile 
PM MAIL   Вверх
LKhiger
Дата 3.2.2010, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Akella @ 2.2.2010,  22:06)
LKhiger, я вот не пойму, ты с кем тут общаешься smile

С любым у кого есть что сказать. По делу. smile 

А, вообще, я одинокий волк....

Лёня smile 
PM MAIL   Вверх
LKhiger
  Дата 3.2.2010, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Вообще, это самый малообщительный форум из всех известных мне.... smile 

Вот смотрите, с Нового Года ни одного нового сообщения. smile 

Кто здесь с кем общается, господин модератор ? smile 

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


Новичок



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

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



Если вы хотите пообщаться, добро пожаловать в раздел Флейм. Здесь же обычно отвечают на вопросы, которые в вашей теме отсутствуют.
PM MAIL   Вверх
LKhiger
Дата 4.2.2010, 05:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Zhekin @ 3.2.2010,  20:39)
Если вы хотите пообщаться, добро пожаловать в раздел Флейм. Здесь же обычно отвечают на вопросы, которые в вашей теме отсутствуют.

У меня к вам нет вопросов. И быть не может.

Но есть ещё и другой способ общения: Дискуссия.

Я вам представил на обсуждение моё уникальное query. smile 

Вы, если хотите, должны его скопировать и поиграться с ним.

Оно вам может понравиться, а может и нет.... У вас могут возникнуть вопросы ко мне.

Задавайте мне свои вопросы, а я постараюсь ответить на них. smile 

С уважением: Лёня Хигер,
PM MAIL   Вверх
LKhiger
  Дата 25.4.2010, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Friday Apr 23 2010 Sudoku:

Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '640900030'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '000000010'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '000400200'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '010000005'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '000067004'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '500030090'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '007004000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '030000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '090000827'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source );
 

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


Lenny



Это сообщение отредактировал(а) LKhiger - 25.4.2010, 19:33
PM MAIL   Вверх
LKhiger
  Дата 23.5.2010, 02:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Level-4 Sudoku. AMNY 05/21/2010 <5 sec>:

Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '790030400'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '058000200'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '000000006'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '900010008'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '000987000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '200050007'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '300000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '029000840'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '006020059'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);


Result:

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

Sudoku Level: Hard Metro NY 05/21/2010 <0 sec>:

Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '002059100'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '140080000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '003004008'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '200093080'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '008000500'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '050720003'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '500400600'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '000060041'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '006930800'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);


Result:

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

Lenny 

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


Шустрый
*


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

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



Why Friday's Sudoku ?

Because on Friday "AM" NY usually publish Level-4 Sudoku, any other levels for My Solver like sunflower seeds for elephant.
  smile 
 smile 
Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '000000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '020508030'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '030090004'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '800305062'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '000800000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '570904008'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '600050070'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '080701050'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '400000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);

select sudoku_solution from SDVW_SOLUTION;


Result: 

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


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


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(LKhiger @  16.1.2010,  19:25 Найти цитируемый пост)
Lenny 


Цитата(LKhiger @  3.2.2010,  16:50 Найти цитируемый пост)
Lenny 


Цитата(LKhiger @  25.4.2010,  19:30 Найти цитируемый пост)
Lenny


А зачем это в каждом сообщении?? Что это?
PM MAIL   Вверх
azesmcar
Дата 29.9.2010, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

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



Цитата(Akella @  29.9.2010,  12:15 Найти цитируемый пост)
А зачем это в каждом сообщении?? Что это? 

Это подпись smile 
Lenny = Леня  smile это вам не судоку разгадывать.

Добавлено через 1 минуту и 36 секунд
Цитата(LKhiger @  3.2.2010,  16:50 Найти цитируемый пост)
Вообще, это самый малообщительный форум из всех известных мне.

видимо DB2 не в моде smile 
PM   Вверх
Akella
Дата 30.9.2010, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Я понял, что это типа Лёня. А зачем подписывать ручками в каждом сообщении?
PM MAIL   Вверх
LKhiger
  Дата 5.10.2010, 14:54 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Akella @ 29.9.2010,  12:15)
Цитата(LKhiger @  16.1.2010,  19:25 Найти цитируемый пост)
Lenny 


Цитата(LKhiger @  3.2.2010,  16:50 Найти цитируемый пост)
Lenny 


Цитата(LKhiger @  25.4.2010,  19:30 Найти цитируемый пост)
Lenny


А зачем это в каждом сообщении?? Что это?

Код

'Lenny' = 'L' || 'e' || repeat('n', 2) || 'y'


TRUE smile 
PM MAIL   Вверх
Sartorius
Дата 5.10.2010, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



LKhiger, вы не думали, что решалки судоку на императивных языках работают быстрее при меньшем объеме исходного кода?

ЗЫ
 Более интересной и сложной является задача составления судоку с единственным решением...
PM MAIL ICQ   Вверх
LKhiger
  Дата 6.10.2010, 07:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Sartorius @ 5.10.2010,  16:06)
LKhiger, вы не думали, что решалки судоку на императивных языках работают быстрее при меньшем объеме исходного кода?

ЗЫ
 Более интересной и сложной является задача составления судоку с единственным решением...

Абсолютно с вами согласен насчёт языков программирования.

Но вот одним выражением ? По-моему немного можно найти таких решений.

Обратная задача мною решена также.
PM MAIL   Вверх
LKhiger
  Дата 6.10.2010, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Мой Решатель Судоку справляется с любыми Судоку.... 

Так попробуйте найти решения для нижеследующей Судоку:
Код

123000000
456000000
789000000
000123000
000456000
000789000
000000123
000000456
000000789


С виду простая, не так ли ?

А вот моя полная подпись:

Leonid Khiger SPA, VP of MFF
PM MAIL   Вверх
LKhiger
Дата 9.10.2010, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(LKhiger @ 6.10.2010,  15:06)
Мой Решатель Судоку справляется с любыми Судоку.... 

Так попробуйте найти решения для нижеследующей Судоку:
Код

123000000
456000000
789000000
000123000
000456000
000789000
000000123
000000456
000000789


С виду простая, не так ли ?


Мой Могучий Решатель Судоку нашёл 283576 решений этой простой, с виду, задачи.

Код
select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '123000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '456000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '789000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '000123000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '000456000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '000789000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '000000123'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '000000456'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '000000789'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);

select sudoku_solution from SDVW_SOLUTION;


Results:

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

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

.................................................. ..........................
................ 283572 other solutions ............................
.................................................. ..........................

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

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


 smile Вася Пупкин smile


Это сообщение отредактировал(а) LKhiger - 9.10.2010, 14:30
PM MAIL   Вверх
Akella
Дата 9.10.2010, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(LKhiger @  6.10.2010,  15:06 Найти цитируемый пост)
А вот моя полная подпись:

Leonid Khiger SPA, VP of MFF 

зайди в настройки своего профиля, там слева есть ссылка Редактировать подпись smile
PM MAIL   Вверх
LKhiger
  Дата 9.10.2010, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Akella @ 9.10.2010,  19:28)
Цитата(LKhiger @  6.10.2010,  15:06 Найти цитируемый пост)
А вот моя полная подпись:

Leonid Khiger SPA, VP of MFF 

зайди в настройки своего профиля, там слева есть ссылка Редактировать подпись smile

Спасибо, дельный совет. 
А я думал, что ты противник подписи вааще !
PM MAIL   Вверх
LKhiger
Дата 23.2.2011, 05:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



/*   
   Any time when you add the new sudoku puzzle to the Sd_Source table 
   you have to use following query, or any query which 
   you want to use for insert start numbers of your Sudoku puzzle.
   After insertion into the table performed, you can run
   select sudoku_solution from SDVW_SOLUTION view.
*/

Код

select max(sd_id) from final table
(insert into Sd_Source  
select ifnull(max(sd_id), 0) + 1, 1, '007206800'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())       
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 2, '006500010'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 3, '803000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all 
select ifnull(max(sd_id), 0) + 1, 4, '000060350'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 5, '070000080'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 6, '052000000'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 7, '000000703'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 8, '960003100'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
union all
select ifnull(max(sd_id), 0) + 1, 9, '005401900'
     , ifnull(max(sd_id), 0) + 1, timestamp(generate_unique())
  from Sd_Source 
);

select sudoku_solution from SDVW_SOLUTION; 


Result:

Цитата

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


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


 




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


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

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