Язык Wolfram Language

Графики и сети

Маршрут шахматного коня

Версия 11 предлагает функцию FindHamiltonianPath, расширяющую возможности нахождения ходов, циклов и маршрутов. Проложим маршрут перемещений фигуры коня на шахматной доске, следуя которому данная фигура попадет на каждую клетку шахматной доски лишь однажды.

код на языке Wolfram Language целиком
In[1]:=
Click for copyable input
(* draw a checker board *) checkerboard = ArrayPlot[Table[Mod[j + i, 2], {i, 8}, {j, 8}], ColorRules -> {1 -> RGBColor[0, .55, .77], 0 -> RGBColor[.67, .9, .99]}, Frame -> False, DataRange -> {{1, 8}, {1, 8}}]; (* compute knight's tour *) g = KnightTourGraph[8, 8]; tour = FindHamiltonianPath[g]; (* show the tour *) Manipulate[ Show[{checkerboard, HighlightGraph[g, PathGraph[tour[[;; i]]], PlotTheme -> "Marketing", GraphHighlightStyle -> "DehighlightHide", EdgeStyle -> Thickness[.01]]}], {i, 1, Length[tour], 1}, SaveDefinitions -> True]
Out[1]=
Запустить анимацию
Остановить анимацию

Родственные примеры

de en es fr ja ko pt-br zh