|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Здравствуйте, помогите, пожалуйста, разобраться с кодом. Не могу понять как он работает. Есть шахматная доска . За 64 хода обойти конем все её клетки (не наступая ни на какое поле дважды), с условием, что с поля 64-го хода конь может допрыгнуть до начальной своей позиции (то есть зациклить всю траекторию). Результат представить в виде таблицы 8х8, в клетках которой должны быть проставлены числа, указывающие номер хода, на котором конь оказался в данной клетке. Задача решается при помощь правила Варнсдорфа Правило: следующий ход коня нужно делать на клетку, откуда существует наименьшее количество возможных ходов. Если клеток с одинаковым количеством ходом несколько, то можно выбрать любую. На практике это реализуется, например, следующим образом. Перед каждым ходом коня вычисляется рейтинг ближайших доступных полей - полей, на которых конь еще не был, и на которые он может перейти за один ход. Рейтинг поля определяется числом ближайших доступных с него полей. Чем меньше рейтинг, тем он лучше. Потом делается ход на поле с наименьшим рейтингом (на любое из таковых, если их несколько), и так далее, пока есть куда ходить. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2020, 17:39 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Откуда вас с конями такая куча попёрла? Три или четыре темы за пару недель... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2020, 17:51 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Jack963 Не могу понять ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2020, 17:54 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Jack963 Это тупик ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2020, 18:22 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Мне больше всего интересно почему здесь используют sys.odcivarchar2list? И вообще что эта за коллекция особо информации про нее нет ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2020, 18:41 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Jack963, чтоб не создавать свою VARRAY пользуют "встроенную/системную" Код: plsql 1. 2.
.... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 11:08 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Stax, а зачем используется пакет dbms_random? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2020, 14:48 |
|
Oracle.Ход конем
|
|||
---|---|---|---|
#18+
Jack963 Stax, а зачем используется пакет dbms_random? order by substr(column_value, 1, 2), dbms_random.value) t dbms_random.value в order by применяется для получения случайного результата (хода) выполните несколько раз с и без (закоментировав) dbms_random, и сравните зы имхо разбирать (исследовать) легче/удобнее в варианте автора dbms_photoshop (с фукцией/процедурой) ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2020, 15:29 |
|
|
start [/forum/topic.php?fid=52&fpage=48&tid=1881339]: |
0ms |
get settings: |
47ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
8ms |
get forum data: |
1ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 370ms |
total: | 542ms |
0 / 0 |