powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / пятничная задачка (про) коня
25 сообщений из 118, страница 2 из 5
пятничная задачка (про) коня
    #37734840
ukku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
orawish, по чуть-чуть нельзя( - это ж брутфорс. Первые 63 этапа могут быть логичные, а вот 64ий не сойдется.
А никто не считал, сколько в теории верных результатов? А то у мя уже час считается, чую надо будет ждать маленькую вечность с тупым перебором.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37734888
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ukku,

ваш алгоритм, похоже, скорее мёртв, чем жив.
не позднее 19 хода он фатально ошибается и весело продолжает скакать по первому возможному варианту до 60-го
на 60-м ходов не остается совсем и начинается вечный балет по перемалыванию заведомо неживого хвоста
(из минимум ~сорока одного уровня)
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37734894
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawish
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SQL> with tt as (select  1 dx , 2 dy from dual
  2  	   union select  1    ,-2    from dual
  3  	   union select  2    , 1    from dual
  4  	   union select  2    ,-1    from dual
  5  	   union select -1    , 2    from dual
  6  	   union select -1    ,-2    from dual
  7  	   union select -2    , 1    from dual
  8  	   union select -2    ,-1    from dual
 ..
101  	;удачи!


Тут можно расширить постановку и искать обходы не только конём но и королём, ферзём
и произвольной фигурой которая ходит вовсе не по правилам шахмат.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37734897
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonи произвольной фигурой которая ходит вовсе не по правилам шахмат.и по площади занимает произвольные 8х8 клеток шахматной доски.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37734898
ukku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поэтому и назвал тупым перебором :) Кто дойдет до 64 только тот и будет верный. Ладно хватит работать сегодня, надо будет завтра подумать чтобы заведомо не верные отсекались.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735455
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawishну так за чем же дело стало? вперёд! ;)Первое, что приходит на ум - воспользоваться правилом Варнсдорфа. Если вдруг не сошлось - вернуться до того момента когда был выбор из нескольких и выбрать другое. Если опять не сошлось - опять вернуться и т. д.
Если ~перебором - то решать задачу для половины доски как рекомендуют здесь , при этом так чтоб конь из конечного положения мог заскочить на другую половину. Потом подход повторить.
Но слишком много рутины - это отталкивает от задачи.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735501
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshoporawishну так за чем же дело стало? вперёд! ;)Первое, что приходит на ум - воспользоваться правилом Варнсдорфа. Если вдруг не сошлось - вернуться до того момента когда был выбор из нескольких и выбрать другое. Если опять не сошлось - опять вернуться и т. д.
Если ~перебором - то решать задачу для половины доски как рекомендуют здесь , при этом так чтоб конь из конечного положения мог заскочить на другую половину. Потом подход повторить.
Но слишком много рутины - это отталкивает от задачи.
насколько я понимаю, решение от ukku и есть инкарнация алгоритма Варнсдорфа, по сути - тот же перебор.
т.е. сам по себе, без дополнительных приседаний - абсолютно никаких шансов
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735506
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawish,

Абсолютно нет.
Правило ВарнсдорфаПри обходе доски коня следует всякий раз ставить на поле, из которого он может сделать наименьшее число ходов на еще не пройденные поля; если таких полей несколько, то можно выбрать любое из них.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735520
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshoporawish,

Абсолютно нет.
Правило ВарнсдорфаПри обходе доски коня следует всякий раз ставить на поле, из которого он может сделать наименьшее число ходов на еще не пройденные поля; если таких полей несколько, то можно выбрать любое из них.
согласен. (посмотрел в код :) в части алгоритма выбора - принципиально разные подходы.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735760
ukku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Метод Варнсдорфа pl-sql-ный отрабатывает за 15 сотых секунд.
Sql-ый вариант не справился за 990 минут :) Ни у кого идей нету, как на sql можно реализовать "память"? Чтобы запоминать, где конь уже был (кроме connect nocycle)
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735773
wurdu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ukkuМетод Варнсдорфа pl-sql-ный отрабатывает за 15 сотых секунд.
Sql-ый вариант не справился за 990 минут :) Ни у кого идей нету, как на sql можно реализовать "память"? Чтобы запоминать, где конь уже был (кроме connect nocycle)Через recursive subquery factoring можно, но там куча ограничений на запрос.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37735818
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ukkuМетод Варнсдорфа pl-sql-ный отрабатывает за 15 сотых секунд.
Sql-ый вариант не справился за 990 минут :) Ни у кого идей нету, как на sql можно реализовать "память"? Чтобы запоминать, где конь уже был (кроме connect nocycle)
вы же траекторию рисуете - в ней всё есть
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736011
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ukkuМетод Варнсдорфа pl-sql-ный отрабатывает за 15 сотых секунд.
Sql-ый вариант не справился за 990 минут :) Ни у кого идей нету, как на sql можно реализовать "память"? Чтобы запоминать, где конь уже был (кроме connect nocycle)
В классике алгоритмизации это состояние хранит стек рекурсии. Попытка развернуть это
в таблицу - конечно оригинально - но будет антипаттерном с точки зрения ресурсов IMHO.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736039
ukku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonПопытка развернуть это в таблицу - конечно оригинально - но будет антипаттерном с точки зрения ресурсов IMHO.
Смысл извращения в самом извращение :) Надо было б написать по-человечески взяли бы плюсы или тому подобное.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736091
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В прошлом году мы где-то доказывали полноту языка SQL по Тьюрингу.
Если доказали то можно решить любую задачку.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736204
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonВ прошлом году мы где-то доказывали полноту языка SQL по Тьюрингу.
Если доказали то можно решить любую задачку.1-е апреля было позавчера.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736218
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshopmaytonВ прошлом году мы где-то доказывали полноту языка SQL по Тьюрингу.
Если доказали то можно решить любую задачку.1-е апреля было позавчера.
Не важно. Жанр пятничных задачек мне интересен вне зависимости от праздников.
Просто не понятна была глубина извращённости решения которую хотел получить
автор.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736304
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshopmaytonВ прошлом году мы где-то доказывали полноту языка SQL по Тьюрингу.
Если доказали то можно решить любую задачку.1-е апреля было позавчера.
offtop:

кстати, про первое апреля (тема же как раз от этого числа)
признаться, ждал, что первым решением будет селект из дуала заранее понятно какой строки.
:)
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736338
ukku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
orawishdbms_photoshopпропущено...
1-е апреля было позавчера.
offtop:
кстати, про первое апреля (тема же как раз от этого числа)
признаться, ждал, что первым решением будет селект из дуала заранее понятно какой строки.
:)
Была мысль стишок из вики распарсить )
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736446
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawish,

Мне как-то сразу показалось, что на вход поступает начальная позиция, на выходе - маршрут.
Если начальная позиция любая, то есс-но задача особого смысла не имеет.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736773
Фотография _bob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ukkuМетод Варнсдорфа pl-sql-ный отрабатывает за 15 сотых секунд.
Sql-ый вариант не справился за 990 минут :) Ни у кого идей нету, как на sql можно реализовать "память"? Чтобы запоминать, где конь уже был (кроме connect nocycle)

память реализуется записью в табличку
у меня подобная задача считалась за ночь
метод решения - построение дерева всех возможных ходов, с проверками на "такое уже было"
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37736980
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshoporawish,

Мне как-то сразу показалось, что на вход поступает начальная позиция, на выходе - маршрут.
Если начальная позиция любая, то есс-но задача особого смысла не имеет.
недопонял я, про что вы.
если решение циклическое, то начальная позиция для него - любая.
(т.е. если замкнёте , то решать можно, начиная с какой хотите позиции)
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37737050
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawishdbms_photoshoporawish,

Мне как-то сразу показалось, что на вход поступает начальная позиция, на выходе - маршрут.
Если начальная позиция любая, то есс-но задача особого смысла не имеет.
недопонял я, про что вы.
если решение циклическое, то начальная позиция для него - любая.
(т.е. если замкнёте , то решать можно, начиная с какой хотите позиции)Начиная с произвольной - неинтересно.
В этом решении можно увидеть определенные закономерности и заставить двигаться коня согласно их:

То же самое касательно закономерностей здесь:

А вот если на входе может быть любое поле, а не a1 это уже интересней.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37737063
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я и предлагал рассмотреть самый общий случай.
И поле - произвольной области. Не прямогуольное.
Или объединение множества прямогольников.
Или лабиринт.
...
Рейтинг: 0 / 0
пятничная задачка (про) коня
    #37737123
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ и предлагал рассмотреть самый общий случай.
И поле - произвольной области. Не прямогуольное.
Или объединение множества прямогольников.
Или лабиринт.
а кто против? во всяком случае - я не против.
рассматривайте
...
Рейтинг: 0 / 0
25 сообщений из 118, страница 2 из 5
Форумы / Oracle [игнор отключен] [закрыт для гостей] / пятничная задачка (про) коня
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]