{"id":385670,"date":"2024-06-29T06:15:00","date_gmt":"2024-06-29T06:15:00","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=385670"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=385670","title":{"rendered":"<span>\u0421\u0442\u043e\u0445\u0430\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\"\/><\/div>\n<p>  MarkovJunior \u2014 \u044d\u0442\u043e \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u043d\u044b\u0439 \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438, \u0430 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. MarkovJunior \u043d\u0430\u0437\u0432\u0430\u043d \u0432 \u0447\u0435\u0441\u0442\u044c \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Andrey_Markov,_Jr.\" rel=\"nofollow noopener noreferrer\">\u0410\u043d\u0434\u0440\u0435\u044f \u0410\u043d\u0434\u0440\u0435\u0435\u0432\u0438\u0447\u0430 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/a>, \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0432\u0448\u0435\u0433\u043e \u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0432\u0448\u0435\u0433\u043e \u0442\u043e, \u0447\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Markov_algorithm\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u043c\u0438 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/a>.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/fea\/57a\/7c2\/fea57a7c27a05e317fdcd2d2e691f6a1.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/fea\/57a\/7c2\/fea57a7c27a05e317fdcd2d2e691f6a1.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/419\/94d\/98c\/41994d98cce3b8d3817284019e91e824.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/419\/94d\/98c\/41994d98cce3b8d3817284019e91e824.gif\"\/><\/div>\n<p>  \u0412 \u0441\u0432\u043e\u0435\u0439 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043d\u0430 MarkovJunior \u2014 \u044d\u0442\u043e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043d\u0430\u044f \u043d\u0438\u0436\u0435 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u044f <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeBacktracker.xml\" rel=\"nofollow noopener noreferrer\">MazeBacktracker<\/a> \u2014 \u044d\u0442\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0438\u0437 \u0434\u0432\u0443\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438:<\/p>\n<ol>\n<li><code>RBB=GGR<\/code>, \u0438\u043b\u0438 \u00ab\u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u0440\u0430\u0441\u043d\u044b\u0439-\u0447\u0451\u0440\u043d\u044b\u0439-\u0447\u0451\u0440\u043d\u044b\u0439 \u043d\u0430 \u0437\u0435\u043b\u0451\u043d\u044b\u0439-\u0437\u0435\u043b\u0451\u043d\u044b\u0439-\u043a\u0440\u0430\u0441\u043d\u044b\u0439\u00bb.<\/li>\n<li><code>RGG=WWR<\/code>, \u0438\u043b\u0438 \u00ab\u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u0440\u0430\u0441\u043d\u044b\u0439-\u0437\u0435\u043b\u0451\u043d\u044b\u0439-\u0437\u0435\u043b\u0451\u043d\u044b\u0439 \u043d\u0430 \u0431\u0435\u043b\u044b\u0439-\u0431\u0435\u043b\u044b\u0439 \u043a\u0440\u0430\u0441\u043d\u044b\u0439\u00bb.<\/li>\n<\/ol>\n<p>  \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 MJ \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c \u0432 \u0441\u0435\u0442\u043a\u0435, \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u0432\u0441\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u0435\u0433\u043e \u043a \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u043c\u0443 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044e. \u0412 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Maze_generation_algorithm#Depth-first_search\" rel=\"nofollow noopener noreferrer\">maze backtracker<\/a> (\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043f\u043e\u0438\u0441\u043a\u0430 \u0441 \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u043e\u043c) \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0430\u0432\u0438\u043b <code>RBB=GGR<\/code>. \u041d\u043e \u0432 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0446\u043e\u0432 \u0437\u0435\u043b\u0451\u043d\u043e\u0435 \u0438\u0437\u0431\u0435\u0433\u0430\u044e\u0449\u0435\u0435 \u0441\u0435\u0431\u044f \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435 \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u0432 \u0442\u0443\u043f\u0438\u043a. \u0422\u0430\u043a \u043a\u0430\u043a \u0442\u0435\u043f\u0435\u0440\u044c \u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043d\u0435\u0442 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439, \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u0432\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e <code>RGG=WWR<\/code>, \u043f\u043e\u043a\u0430 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435 \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442 \u0438\u0437 \u0442\u0443\u043f\u0438\u043a\u0430. \u0417\u0430\u0442\u0435\u043c \u043e\u043d \u0441\u043d\u043e\u0432\u0430 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439 \u043d\u0438 \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u043f\u0440\u0430\u0432\u0438\u043b.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/a32\/5f5\/a83\/a325f5a8377f9d4db3867322f966a927.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/a32\/5f5\/a83\/a325f5a8377f9d4db3867322f966a927.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/a2b\/048\/fc7\/a2b048fc744287cdda4878bf80ec086f.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/a2b\/048\/fc7\/a2b048fc744287cdda4878bf80ec086f.gif\"\/><\/div>\n<p>  \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u043d\u044b\u0439 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432 MarkovJunior \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u043f\u0440\u043e\u0433\u043e\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442 \u043a \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443 \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 Sokoban <code>{RWB=BRW RB=BR}<\/code> \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0433\u0440\u0443\u043f\u043f\u0443 \u0430\u0433\u0435\u043d\u0442\u043e\u0432 (\u043a\u0440\u0430\u0441\u043d\u044b\u0445) \u0432\u044b\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u044f\u0449\u0438\u043a\u0438 (\u0431\u0435\u043b\u044b\u0435) \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0444\u0438\u0433\u0443\u0440\u044b.<\/p>\n<p>  \u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u044d\u0442\u0438\u0445 \u0438\u0434\u0435\u0439 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\" rel=\"nofollow noopener noreferrer\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u043d\u044b\u0445 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432<\/a> \u043f\u043e\u0434\u0437\u0435\u043c\u0435\u043b\u0438\u0439, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b, \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043e\u043a \u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0439.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/13e\/eaf\/072\/13eeaf072a7644526b12caef150d875b.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/13e\/eaf\/072\/13eeaf072a7644526b12caef150d875b.png\"\/><\/div>\n<p>  \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b:<\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/syntax.md\" rel=\"nofollow noopener noreferrer\">\u043e\u0431\u0437\u043e\u0440 Xml-\u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430<\/a>.<\/li>\n<li>\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u044b \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0434\u044b: <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/ModernHouse.md\" rel=\"nofollow noopener noreferrer\">ModernHouse<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/SeaVilla.md\" rel=\"nofollow noopener noreferrer\">SeaVilla<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/Apartemazements.md\" rel=\"nofollow noopener noreferrer\">Apartemazements<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/CarmaTower.md\" rel=\"nofollow noopener noreferrer\">CarmaTower<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/Escheresque.md\" rel=\"nofollow noopener noreferrer\">Escheresque<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/PillarsOfEternity.md\" rel=\"nofollow noopener noreferrer\">PillarsOfEternity<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/Blog\/blob\/master\/RandomSurface.md\" rel=\"nofollow noopener noreferrer\">Surface<\/a>, <a href=\"https:\/\/twitter.com\/ExUtumno\/status\/895688856304992256\" rel=\"nofollow noopener noreferrer\">Knots<\/a>.<\/li>\n<li>\u041d\u0435\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 <a href=\"https:\/\/gist.github.com\/dogles\/a926ab890552cc7e45400a930398449d\" rel=\"nofollow noopener noreferrer\">\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u043c\u0435\u0442\u043a\u0438<\/a> \u0414\u044d\u043d\u0430 \u041e\u0433\u043b\u0441\u0430 \u0438 <a href=\"https:\/\/github.com\/kaya3\/MarkovJunior-docs\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430<\/a> \u042d\u043d\u0434\u0440\u044e \u041a\u044d\u044f.<\/li>\n<\/ol>\n<p>  <\/p>\n<h2>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/h2>\n<p>  \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0434\u043b\u044f \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u0430 <code>A<\/code> \u2014 \u044d\u0442\u043e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u0430\u0432\u0438\u043b. \u041a\u0430\u0436\u0434\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u2014 \u044d\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0430 \u0432\u0438\u0434\u0430 <code>x=y<\/code>, \u0433\u0434\u0435 <code>x<\/code> \u0438 <code>y<\/code> \u2014 \u0441\u043b\u043e\u0432\u0430 \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u0430 <code>A<\/code>, \u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043c\u0435\u0447\u0435\u043d\u044b \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0430. \u041f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u043a \u0441\u043b\u043e\u0432\u0443 <code>w<\/code> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<ol>\n<li>\u041d\u0430\u0445\u043e\u0434\u0438\u043c \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e <code>x=y<\/code>, \u0433\u0434\u0435 <code>x<\/code> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u043e\u0439 <code>w<\/code>. \u0415\u0441\u043b\u0438 \u0442\u0430\u043a\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043d\u0435\u0442, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432.<\/li>\n<li>\u0417\u0430\u043c\u0435\u043d\u044f\u0435\u043c \u0441\u0430\u043c\u044b\u0439 \u043b\u0435\u0432\u044b\u0439 <code>x<\/code> \u0432 <code>w<\/code> \u043d\u0430 <code>y<\/code>.<\/li>\n<li>\u0415\u0441\u043b\u0438 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u043e\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0448\u0430\u0433\u0443 1.<\/li>\n<\/ol>\n<p>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0434\u043b\u044f \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u0430 <code>{0, 1, x}<\/code> (\u03b5 \u2014 \u044d\u0442\u043e \u043f\u0443\u0441\u0442\u043e\u0435 \u0441\u043b\u043e\u0432\u043e):<\/p>\n<pre><code class=\"cpp\">1=0x x0=0xx 0=\u03b5<\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c \u0435\u0433\u043e \u043a \u0441\u0442\u0440\u043e\u043a\u0435 <code>110<\/code>, \u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u043e\u043a:<\/p>\n<pre><code class=\"cpp\">110 -> 0x10 -> 0x0x0 -> 00xxx0 -> 00xx0xx -> 00x0xxxx -> 000xxxxxx -> 00xxxxxx -> 0xxxxxx -> xxxxxx<\/code><\/pre>\n<p>  \u0412 \u0446\u0435\u043b\u043e\u043c, \u044d\u0442\u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0434\u0432\u043e\u0438\u0447\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u0432 \u0435\u0433\u043e \u0443\u043d\u0430\u0440\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435.<\/p>\n<p>  \u0421\u0442\u0443\u0434\u0435\u043d\u0442 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 <a href=\"https:\/\/lv.wikipedia.org\/wiki\/Vilnis_Detlovs\" rel=\"nofollow noopener noreferrer\">\u0412\u0438\u043b\u043d\u0438\u0441 \u0414\u0435\u0442\u043b\u043e\u0432\u0441<\/a> <a href=\"http:\/\/www.mathnet.ru\/php\/archive.phtml?wshow=paper&amp;amp;jrnid=tm&amp;amp;paperid=1293\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0430\u0437\u0430\u043b<\/a>, \u0447\u0442\u043e \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u0422\u044c\u044e\u0440\u0438\u043d\u0433\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041c\u0430\u0440\u043a\u043e\u0432\u0430, \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0449\u0438\u0439 \u0442\u0443 \u0436\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u044e. \u0414\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f: \u0433\u0440\u0430\u043c\u043c\u0430\u0442\u0438\u043a\u0438 \u2014 \u044d\u0442\u043e \u043d\u0435\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438, \u0430 L-\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u2014 \u044d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e. \u0411\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 <a href=\"http:\/\/www.mathnet.ru\/links\/1543dd6e347b444e6f3e108fafaf9f2a\/tm1178.pdf\" rel=\"nofollow noopener noreferrer\">\u043a\u043d\u0438\u0433\u0435 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/a>; \u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u043e\u0431\u0449\u0435\u0433\u043e \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d \u0432 <a href=\"https:\/\/github.com\/mxgmn\/test#comments\" rel=\"nofollow noopener noreferrer\">\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0443 \u043f\u043e\u0441\u0442\u0430<\/a>, \u0430 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Markov_algorithm#Description\" rel=\"nofollow noopener noreferrer\">\u043f\u0440\u0438\u043c\u0435\u0440 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f<\/a> \u2014 \u0432 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438.<\/p>\n<p>  \u041a\u0430\u043a \u043e\u0431\u043e\u0431\u0449\u0438\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0434\u043e \u043c\u043d\u043e\u0433\u043e\u043c\u0435\u0440\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439? \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043f\u0440\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f\u0445 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043b\u0435\u0432\u044b\u0435 \u0438 \u043f\u0440\u0430\u0432\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440. \u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u0432\u044b\u0431\u0440\u0430\u0442\u044c <em>\u0441\u0430\u043c\u043e\u0435 \u043b\u0435\u0432\u043e\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435<\/em>. \u0420\u0435\u0448\u0438\u0442\u044c \u044d\u0442\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438:<\/p>\n<ul>\n<li>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435. \u0418\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0442 \u0443\u0437\u043b\u044b <code>(exists)<\/code> \u044f\u0437\u044b\u043a\u0430 MarkovJunior.<\/li>\n<li>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u0441\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f. \u041e\u0434\u043d\u0430\u043a\u043e \u0443 \u044d\u0442\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0440\u0430\u0437\u043d\u044b\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u043f\u0435\u0440\u0435\u0441\u0435\u043a\u0430\u0442\u044c\u0441\u044f \u0438 \u0438\u043c\u0435\u0442\u044c \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u044b. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f:<br \/> \n<ul>\n<li>\u0416\u0430\u0434\u043d\u044b\u0439 \u0432\u044b\u0431\u043e\u0440 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043d\u0435\u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u0443\u044e\u0449\u0438\u0445 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439. \u0418\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u044e\u0442 \u0443\u0437\u043b\u044b <code>{forall}<\/code> \u044f\u0437\u044b\u043a\u0430 MarkovJunior.<\/li>\n<li>\u0423\u0447\u0451\u0442 \u0432\u0441\u0435\u0445 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439 \u0432 \u0441\u0443\u043f\u0435\u0440\u043f\u043e\u0437\u0438\u0446\u0438\u0438. \u0422\u043e \u0435\u0441\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0435 \u0441\u0435\u0442\u043a\u0438 \u0432\u043e\u043b\u043d\u044b \u2014 \u0431\u0443\u043b\u0435\u0432\u044b \u0432\u0435\u043a\u0442\u043e\u0440\u044b, \u0441\u043e\u043e\u0431\u0449\u0430\u044e\u0449\u0438\u0435, \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e-\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u044b, \u0430 \u043a\u0430\u043a\u0438\u0435 \u043d\u0435\u0442. \u0418 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 MarkovJunior.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>  \u041c\u044b \u0442\u0435\u0440\u044f\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0442\u0443 \u043f\u043e \u0422\u044c\u044e\u0440\u0438\u043d\u0433\u0443, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043d\u0430\u0448\u0430 \u043d\u043e\u0432\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u043d\u0435 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0430, \u043d\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u0442\u0430\u043a\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0430 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432.<\/p>\n<h2>\u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438<\/h2>\n<p>  \u041d\u0430\u0432\u0435\u0440\u043d\u043e, \u0441\u0430\u043c\u0430\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043d\u0430 MarkovJunior \u2014 \u044d\u0442\u043e <code>(B=W)<\/code>. \u041e\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u043e <code>B=W<\/code>. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u044d\u0442\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0447\u0451\u0440\u043d\u044b\u0439 \u043a\u0432\u0430\u0434\u0440\u0430\u0442 \u0432 \u0431\u0435\u043b\u044b\u0439.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/678\/6e5\/cc8\/6786e5cc8d41689e2d06a19e462ff0cd.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/678\/6e5\/cc8\/6786e5cc8d41689e2d06a19e462ff0cd.gif\"\/><\/div>\n<p>  <i>(B=W)<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/d30\/978\/af7\/d30978af775811feb05645b295658dc9.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/d30\/978\/af7\/d30978af775811feb05645b295658dc9.gif\"\/><\/div>\n<p>  <i>(WB=WW)<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/abc\/c13\/588\/abcc13588e0145ad7959762b2868348f.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/abc\/c13\/588\/abcc13588e0145ad7959762b2868348f.gif\"\/><\/div>\n<p>  <i>(WBB=WAW)<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/09b\/762\/8ca\/09b7628ca0b1f031e4601161a38e7dd3.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/09b\/762\/8ca\/09b7628ca0b1f031e4601161a38e7dd3.png\"\/><\/div>\n<p>  <i>(WBB=WAW)<\/i><\/p>\n<p>  \u0411\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Growth.xml\" rel=\"nofollow noopener noreferrer\">Growth<\/a> <code>(WB=WW)<\/code>. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u043e\u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u0447\u0451\u0440\u043d\u043e-\u0431\u0435\u043b\u0443\u044e \u043f\u0430\u0440\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u043a\u043b\u0435\u0442\u043e\u043a <code>BW<\/code> \u0431\u0435\u043b\u043e-\u0431\u0435\u043b\u043e\u0439 \u043f\u0430\u0440\u043e\u0439 <code>WW<\/code>. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u043e\u043d\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0443\u044e \u0447\u0451\u0440\u043d\u0443\u044e \u044f\u0447\u0435\u0439\u043a\u0443, \u0441\u043e\u0441\u0435\u0434\u043d\u044e\u044e \u0441 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0431\u0435\u043b\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u043e\u0439, \u0438 \u0440\u0430\u0441\u043a\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0435\u0451 \u0432 \u0431\u0435\u043b\u044b\u0439 \u0446\u0432\u0435\u0442. \u042d\u0442\u0430 \u043c\u043e\u0434\u0435\u043b\u044c \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u0430 <a href=\"http:\/\/digitalassets.lib.berkeley.edu\/math\/ucb\/text\/math_s4_v4_article-15.pdf\" rel=\"nofollow noopener noreferrer\">\u043c\u043e\u0434\u0435\u043b\u0438 \u0440\u043e\u0441\u0442\u0430 \u0418\u0434\u0435\u043d\u0430<\/a>: \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u043e\u0431\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u044e\u0442 \u0432 \u043e\u0434\u043d\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435 \u0447\u0451\u0440\u043d\u044b\u0445 \u044f\u0447\u0435\u0435\u043a. \u041e\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0435\u0439: \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0447\u0451\u0440\u043d\u044b\u043c \u044f\u0447\u0435\u0439\u043a\u0430\u043c, \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c \u0441 \u0431\u0435\u043b\u044b\u043c\u0438, \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u043e \u043f\u0430\u0440\u0430\u043c \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0447\u0451\u0440\u043d\u044b\u0445 \u0438 \u0431\u0435\u043b\u044b\u0445 \u044f\u0447\u0435\u0435\u043a.<\/p>\n<p>  \u041c\u043e\u0434\u0435\u043b\u044c <code>(WBB=WAW)<\/code> \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u043a\u043e\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442! \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u0435\u0451 \u0441 <a href=\"https:\/\/bl.ocks.org\/mbostock\/70a28267db0354261476\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439<\/a> \u043d\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041b\u044e\u0431\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c MarkovJunior \u043c\u043e\u0436\u043d\u043e \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439. \u041d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0438\u0437 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0432\u044b\u0448\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeGrowth.xml\" rel=\"nofollow noopener noreferrer\">MazeGrowth<\/a> \u0432 3D, \u043e\u0442\u0440\u0435\u043d\u0434\u0435\u0440\u0435\u043d\u043d\u044b\u0439 \u0432 <a href=\"https:\/\/ephtracy.github.io\/\" rel=\"nofollow noopener noreferrer\">MagicaVoxel<\/a>. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/resources\/palette.xml\" rel=\"nofollow noopener noreferrer\">\u043f\u0430\u043b\u0438\u0442\u0440\u0443 PICO-8<\/a>:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/501\/338\/5f1\/5013385f1c4e5fda45b500d7d0fcadda.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/501\/338\/5f1\/5013385f1c4e5fda45b500d7d0fcadda.png\"\/><\/div>\n<p>  \u041c\u043e\u0434\u0435\u043b\u044c <code>(RBB=WWR)<\/code> \u2014 \u044d\u0442\u043e <a href=\"https:\/\/en.wikipedia.org\/wiki\/Self-avoiding_walk\" rel=\"nofollow noopener noreferrer\">\u0438\u0437\u0431\u0435\u0433\u0430\u044e\u0449\u0435\u0435 \u0441\u0435\u0431\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435<\/a>. \u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u0437\u0431\u0435\u0433\u0430\u044e\u0449\u0438\u0435 \u0441\u0435\u0431\u044f \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u044f \u0432 3D \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0448\u0430\u0433\u043e\u0432, \u0447\u0435\u043c \u0432 2D. \u0412 \u0446\u0435\u043b\u043e\u043c, \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u0441\u0445\u043e\u0436\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f\u0445 \u2014 \u043f\u043e\u0442\u0440\u044f\u0441\u0430\u044e\u0449\u0430\u044f \u0442\u0435\u043c\u0430. \u0412 <a href=\"https:\/\/sites.math.washington.edu\/~morrow\/336_19\/papers19\/Legrand.pdf\" rel=\"nofollow noopener noreferrer\">\u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435<\/a> \u0414\u0436\u043e\u0440\u0434\u0436\u0430 \u041f\u043e\u043b\u0438\u0430 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f, \u0447\u0442\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435 \u0432 2D \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043a \u0441\u0432\u043e\u0435\u0439 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0441 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c\u044e \u0435\u0434\u0438\u043d\u0438\u0446\u0430, \u043d\u043e \u0432 3D \u044d\u0442\u043e \u0443\u0436\u0435 \u043d\u0435 \u0442\u0430\u043a.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/6eb\/03f\/356\/6eb03f356d0724f1f249e8c6cf272e65.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/6eb\/03f\/356\/6eb03f356d0724f1f249e8c6cf272e65.gif\"\/><\/div>\n<p>  <i>(RBB=WWR)<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/b22\/5f4\/da0\/b225f4da0a853a20eeb2d8139b1da47e.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/b22\/5f4\/da0\/b225f4da0a853a20eeb2d8139b1da47e.gif\"\/><\/div>\n<p>  <i>LoopErasedWalk<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/0ae\/b5e\/e57\/0aeb5ee576b5caaffb32dd91fffb205c.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/0ae\/b5e\/e57\/0aeb5ee576b5caaffb32dd91fffb205c.gif\"\/><\/div>\n<p>  <i>(RB=WR RW=WR)<\/i><\/p>\n<p>  \u0412 \u043e\u0434\u0438\u043d <strong>rulenode<\/strong> (\u0443\u0437\u0435\u043b \u043f\u0440\u0430\u0432\u0438\u043b) \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>(RBB=WWR RBW=GWP PWG=PBU UWW=BBU UWP=BBR)<\/code> \u2014 \u044d\u0442\u043e <a href=\"https:\/\/en.wikipedia.org\/wiki\/Loop-erased_random_walk\" rel=\"nofollow noopener noreferrer\">\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435 \u0441 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u043c\u0438 \u043f\u0435\u0442\u043b\u044f\u043c\u0438<\/a>. \u041c\u043e\u0434\u0435\u043b\u044c Trail <code>(RB=WR RW=WR)<\/code> \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 <a href=\"https:\/\/blog.jrheard.com\/procedural-dungeon-generation-drunkards-walk-in-clojurescript\" rel=\"nofollow noopener noreferrer\">\u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0435 \u043f\u0435\u0449\u0435\u0440\u044b<\/a>.<\/p>\n<p>  \u041c\u043e\u0434\u0435\u043b\u044c <code>(RBB=WWR R*W=W*R)<\/code> \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430 \u043a\u0430\u043a <a href=\"http:\/\/weblog.jamisbuck.org\/2011\/1\/17\/maze-generation-aldous-broder-algorithm\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432 \u041e\u043b\u0434\u043e\u0441\u0430-\u0411\u0440\u043e\u0434\u0435\u0440\u0430<\/a>. \u0421\u0438\u043c\u0432\u043e\u043b <strong>\u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438<\/strong> <code>*<\/code> \u0432\u043e \u0432\u0432\u043e\u0434\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c <em>\u043b\u044e\u0431\u043e\u0439<\/em> \u0446\u0432\u0435\u0442. \u0421\u0438\u043c\u0432\u043e\u043b \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u0432\u044b\u0432\u043e\u0434\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0446\u0432\u0435\u0442 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f. \u0412 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041e\u043b\u0434\u043e\u0441\u0430-\u0411\u0440\u043e\u0434\u0435\u0440\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0448\u0430\u0433\u043e\u0432 \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u0430, \u0447\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, MazeGrowth, \u043d\u043e \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0435\u0442 \u0443 MazeGrowth: \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u0430. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, MazeTrail \u2014 \u044d\u0442\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432 \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u043a\u043e\u0441\u0430, \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u043d \u0441\u044d\u043c\u043f\u043b\u0438\u0440\u0443\u0435\u0442 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u044b (\u0438\u043b\u0438 \u0441\u0432\u044f\u0437\u043d\u044b\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u044f) \u0441 \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u044b\u043c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c. \u0415\u0449\u0451 \u0431\u043e\u043b\u0435\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432 \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u043a\u043e\u0441\u043e\u0432 \u2014 <a href=\"http:\/\/web.stanford.edu\/~yuvalwig\/math\/teaching\/UniformSpanningTrees.pdf\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0423\u0438\u043b\u0441\u043e\u043d\u0430<\/a>. \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u0435\u0433\u043e <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Wilson.xml\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e<\/a> \u043d\u0430 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/images\/Wilson.gif\" rel=\"nofollow noopener noreferrer\">MarkovJunior<\/a> \u0441 <a href=\"https:\/\/bl.ocks.org\/mbostock\/11357811\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439<\/a> \u043d\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435!<\/p>\n<h2>\u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0443\u0437\u043b\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u043b<\/h2>\n<p>  \u041c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0443\u0437\u043b\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u043b \u0432 <strong>\u0443\u0437\u0435\u043b \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/strong> \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0434\u0438\u043d \u0437\u0430 \u0434\u0440\u0443\u0433\u0438\u043c. \u0412 \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/River.xml\" rel=\"nofollow noopener noreferrer\">River<\/a> \u043c\u044b \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0441\u0442\u043e\u0445\u0430\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Voronoi.xml\" rel=\"nofollow noopener noreferrer\">\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0443 \u0412\u043e\u0440\u043e\u043d\u043e\u0433\u043e<\/a> \u0441 \u0434\u0432\u0443\u043c\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c\u0438 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0433\u0440\u0430\u043d\u0438\u0446\u0443 \u043c\u0435\u0436\u0434\u0443 \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u043c\u0438 \u043a\u0430\u043a \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0435\u043a\u0438. \u0417\u0430\u0442\u0435\u043c \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0435\u0449\u0451 \u043f\u0430\u0440\u0443 \u0441\u0438\u0434\u043e\u0432 \u0412\u043e\u0440\u043e\u043d\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0440\u0430\u0441\u0442\u0438\u0442\u044c \u043b\u0435\u0441\u0430 \u0438 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u0442\u0438\u0442\u044c \u0442\u0440\u0430\u0432\u0443 \u043e\u0442 \u0440\u0435\u043a\u0438. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0434\u043e\u043b\u0438\u043d\u044b \u0440\u0435\u043a!<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/8fe\/316\/601\/8fe3166016c1b592120a8afa9b212624.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/8fe\/316\/601\/8fe3166016c1b592120a8afa9b212624.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/cd3\/d23\/1aa\/cd3d231aa74898f910a6a096fc3c4328.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/cd3\/d23\/1aa\/cd3d231aa74898f910a6a096fc3c4328.gif\"\/><\/div>\n<p>  \u0412 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Apartemazements.xml\" rel=\"nofollow noopener noreferrer\">Apartemazements<\/a> \u043c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441 \u0443\u0437\u043b\u0430 WFC, \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u043e\u0441\u0442\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0443\u0437\u043b\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u043b:<\/p>\n<ol>\n<li>\u041f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f: \u043f\u043e\u043c\u0435\u0447\u0430\u0435\u043c \u043d\u0438\u0436\u043d\u0438\u0435 \u044f\u0447\u0435\u0439\u043a\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u043d\u0438\u0437\u0430, \u043f\u043e\u043c\u0435\u0447\u0430\u0435\u043c \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f \u044f\u0447\u0435\u0439\u043a\u0438 \u0433\u0440\u0430\u043d\u0438\u0446 (\u0431\u043e\u043a\u0430 \u0438 \u0432\u0435\u0440\u0445) \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0433\u0440\u0430\u043d\u0438\u0446. \u042f\u0447\u0435\u0439\u043a\u0438 \u0433\u0440\u0430\u043d\u0438\u0446 \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0432 Empty, \u043d\u0438\u0436\u043d\u0438\u0435 \u044f\u0447\u0435\u0439\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0432\u043e \u0432\u0441\u0435 \u0442\u0430\u0439\u043b\u044b, \u043a\u0440\u043e\u043c\u0435 Down.<\/li>\n<li>\u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0442\u0430\u0439\u043b\u0441\u0435\u0442 <a href=\"\/mxgmn\/MarkovJunior\/blob\/main\/resources\/tilesets\/Paths.xml\">Paths<\/a> WFC \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0446\u0438\u043a\u043b\u043e\u0432 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u044b\u0445 \u043b\u0435\u0441\u0442\u043d\u0438\u0446.<\/li>\n<li>\u0420\u0430\u043d\u0434\u043e\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u044f.<\/li>\n<li>\u0421\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0441 \u0443\u0433\u043b\u043e\u0432 \u043f\u043b\u043e\u0441\u043a\u0438\u0445 \u0442\u0430\u0439\u043b\u043e\u0432.<\/li>\n<li>\u0423\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u0432\u043e\u0439\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u0430\u0441\u0430\u044e\u0442\u0441\u044f \u0437\u0435\u043c\u043b\u0438 \u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u0430\u0441\u0430\u044e\u0442\u0441\u044f \u043b\u0435\u0441\u0442\u043d\u0438\u0446, \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432, \u0440\u0430\u0441\u0442\u0443\u0449\u0438\u0445 \u0438\u0437 \u0443\u0433\u043b\u043e\u0432 \u0442\u0430\u0439\u043b\u043e\u0432 Turn.<\/li>\n<li>\u0412\u044b\u0440\u0430\u0449\u0438\u0432\u0430\u0435\u043c \u043e\u043a\u043d\u0430 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c\u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u043c\u0438.<\/li>\n<li>\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u043e\u043a\u043d\u0430 \u0432 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0438 \u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430. \u0414\u0435\u043b\u0430\u0435\u043c \u044d\u0442\u043e \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0448\u0430\u0433\u043e\u0432:<br \/> \n<ol>\n<li>\u0412\u044b\u044f\u0432\u043b\u044f\u0435\u043c \u043d\u0435\u0440\u043e\u0432\u043d\u044b\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u043e\u043a\u043e\u043d, \u043a\u043e\u0433\u0434\u0430 \u0443\u0433\u043b\u044b \u043e\u043a\u043e\u043d \u043a\u0430\u0441\u0430\u044e\u0442\u0441\u044f \u0441\u0440\u0435\u0434\u043d\u0438\u0445 \u0442\u043e\u0447\u0435\u043a \u043e\u043a\u043e\u043d.<\/li>\n<li>\u041f\u043e\u043c\u0435\u0447\u0430\u0435\u043c \u044d\u0442\u0438 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u043c \u043f\u043e\u043c\u0435\u0442\u043a\u0438 \u043d\u0430 \u043f\u043e\u043b\u043d\u044b\u0435 \u0434\u043b\u0438\u043d\u044b \u0431\u043e\u043a\u043e\u0432 \u043e\u043a\u043e\u043d.<\/li>\n<li>\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u043d\u0435\u043f\u043e\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u044b \u0431\u043e\u043a\u043e\u0432 \u043e\u043a\u043e\u043d.<\/li>\n<\/ol>\n<p>  <\/li>\n<li>\u041f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f \u043e\u043a\u043d\u0430 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1&#215;1 \u0432 \u0441\u0442\u0435\u043d\u044b.<\/li>\n<\/ol>\n<p>  \u0411\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0438\u0445 \u0432 <strong>\u0443\u0437\u0435\u043b \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/strong>. \u0423\u0437\u043b\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u044e\u0442 \u043d\u0430\u0448\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u043c \u0443\u0437\u043b\u0430\u043c. \u041a\u043e\u0433\u0434\u0430 \u0443\u0437\u0435\u043b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0430\u043a\u0442\u0438\u0432\u0435\u043d, \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u0435\u0433\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u0439 \u0443\u0437\u0435\u043b, \u0438\u043c\u0435\u044e\u0449\u0438\u0439 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435, \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u0435\u0433\u043e. \u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0448\u0430\u0433\u0435 \u043e\u043d \u0441\u043d\u043e\u0432\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0443\u0437\u0435\u043b \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u2014 \u044d\u0442\u043e <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeBacktracker.xml\" rel=\"nofollow noopener noreferrer\">MazeBacktracker<\/a>, \u043e\u0431\u044a\u044f\u0441\u043d\u0451\u043d\u043d\u044b\u0439 \u0432 \u043e\u0434\u043d\u043e\u043c \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/d03\/952\/86c\/d0395286c167e5bd77928a54aea1d99d.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/d03\/952\/86c\/d0395286c167e5bd77928a54aea1d99d.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/7b7\/335\/e18\/7b7335e18d3ba08c7f3203d464b3a52a.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/7b7\/335\/e18\/7b7335e18d3ba08c7f3203d464b3a52a.gif\"\/><\/div>\n<p>  \u041e\u0434\u0438\u043d \u0438\u0437 \u043c\u043e\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043c\u043e\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u043c\u0435\u043d\u044f \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 MarkovJunior \u2014 \u044d\u0442\u043e <a href=\"https:\/\/journal.stuffwithstuff.com\/2014\/12\/21\/rooms-and-mazes\/\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0434\u0437\u0435\u043c\u0435\u043b\u0438\u0439 \u0411\u043e\u0431\u0430 \u041d\u0438\u0441\u0442\u0440\u043e\u043c\u0430<\/a>. \u041e\u043d \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0432\u0438\u0434:<\/p>\n<ol>\n<li>\u0420\u0438\u0441\u0443\u0435\u043c \u0441\u0435\u0442\u043a\u0443 <code>{PBB=**P}<\/code>.<\/li>\n<li>\u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0441\u0435\u0440\u0438\u044e \u043a\u043e\u043c\u043d\u0430\u0442 <code>(room.png)<\/code>.<\/li>\n<li>\u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442 \u0432 \u043e\u0441\u0442\u0430\u0432\u0448\u0435\u0439\u0441\u044f \u0447\u0430\u0441\u0442\u0438 \u0441\u0435\u0442\u043a\u0438. \u041c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432, \u043d\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u0435\u043d <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeBacktracker.xml\" rel=\"nofollow noopener noreferrer\">MazeBacktracker<\/a>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u0442\u043e\u0447\u0435\u043a \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f.<\/li>\n<li>\u0414\u0435\u043b\u0430\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0443\u044e\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043a\u043e\u043c\u043d\u0430\u0442 \u0438 \u043a\u043e\u0440\u0438\u0434\u043e\u0440\u043e\u0432 \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u043e\u0439. \u042d\u0442\u043e \u0438\u0437\u044f\u0449\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0443\u0437\u043b\u0430 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 <code>({GWW=**G}(GBW=*WG))<\/code>.<\/li>\n<li>\u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f <code>(GBG=*W* #5)<\/code>, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0435\u0435\u0441\u044f \u043f\u043e\u0434\u0437\u0435\u043c\u0435\u043b\u044c\u0435 \u0438\u043c\u0435\u043b\u043e \u043f\u0435\u0442\u043b\u0438. \u041f\u043e\u0434\u0437\u0435\u043c\u0435\u043b\u044c\u044f \u0431\u0435\u0437 \u043f\u0435\u0442\u0435\u043b\u044c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u043a\u0443\u0447\u043d\u044b, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0438\u0433\u0440\u043e\u043a\u0443 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0443\u0436\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0437\u043e\u043d\u044b.<\/li>\n<li>\u0423\u0434\u0430\u043b\u044f\u0435\u043c \u0442\u0443\u043f\u0438\u043a\u0438 <code>{BBB\/BWB=BBB\/BBB}<\/code>.<\/li>\n<\/ol>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/ca0\/cf9\/241\/ca0cf9241ef721112402eab10cbbddab.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/ca0\/cf9\/241\/ca0cf9241ef721112402eab10cbbddab.gif\"\/><\/div>\n<p>  \u041a\u0430\u043a \u0432 \u0420\u0435\u0444\u0430\u043b\u0435, \u0443\u0437\u043b\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u043c\u0438: \u0437\u0430\u0439\u0434\u044f \u0432 \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u0439 \u0443\u0437\u0435\u043b, \u043c\u044b \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0443\u0437\u043b\u044b, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u0441\u044f \u0434\u043e\u0447\u0435\u0440\u043d\u044f\u044f \u0432\u0435\u0442\u0432\u044c.<\/p>\n<h2>\u0418\u043d\u0444\u0435\u0440\u0435\u043d\u0441<\/h2>\n<p>  \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u043d\u044b\u0439 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432 MarkovJunior \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u043f\u0440\u043e\u0433\u043e\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0435\u0434\u0443\u0442 \u043a \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443 \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0434\u0432\u0430 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f (\u0438\u043b\u0438 \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f) \u0446\u0435\u043f\u043e\u0447\u043a\u043e\u0439 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438.<\/p>\n<p>  \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u0430 \u2014 \u044d\u0442\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0442\u043e\u0447\u0435\u043a \u043f\u0443\u0442\u0451\u043c. \u0412 \u043c\u043e\u0434\u0435\u043b\u0438 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u044f \u0441 \u0438\u0437\u0431\u0435\u0433\u0430\u043d\u0438\u0435\u043c \u0441\u0435\u0431\u044f <code>(RBB=WWR)<\/code> \u043c\u044b \u043c\u043e\u0436\u0435\u043c <strong>\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c<\/strong>, \u043a\u0430\u043a \u043a\u0432\u0430\u0434\u0440\u0430\u0442 \u043d\u0430 \u0441\u0435\u0442\u043a\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043a\u0440\u0430\u0441\u043d\u044b\u043c (<code>R<\/code>). \u0422\u043e\u0433\u0434\u0430 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0435\u0434\u0443\u0442 \u043a \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u043c\u0443 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0443. \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043d \u0441\u0442\u0440\u0435\u043c\u0438\u043b\u0441\u044f \u043a \u0446\u0435\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0438\u043b\u0438 \u043c\u0435\u043d\u0435\u0435 \u0441\u0442\u0440\u043e\u0433\u043e, \u043c\u0435\u043d\u044f\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <strong>\u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b<\/strong>. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u043d\u0430 \u043d\u043e\u043b\u044c.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c46\/236\/c6c\/c46236c6cb0d436b4760355c7448617e.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c46\/236\/c6c\/c46236c6cb0d436b4760355c7448617e.gif\"\/><\/div>\n<p>  <i>\u0421\u0430\u043c\u0430\u044f \u043d\u0438\u0437\u043a\u0430\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/3bb\/942\/4a3\/3bb9424a3440ba7bdb76fddd2c09507d.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/3bb\/942\/4a3\/3bb9424a3440ba7bdb76fddd2c09507d.gif\"\/><\/div>\n<p>  <i>\u0425\u043e\u043b\u043e\u0434\u043d\u0430\u044f<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e3a\/6dd\/4cc\/e3a6dd4cc4db5f106b038929e5931215.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e3a\/6dd\/4cc\/e3a6dd4cc4db5f106b038929e5931215.gif\"\/><\/div>\n<p>  <i>\u0413\u043e\u0440\u044f\u0447\u0430\u044f<\/i><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c95\/4be\/1a0\/c954be1a04c14f92cd0c04d30bf07b2c.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c95\/4be\/1a0\/c954be1a04c14f92cd0c04d30bf07b2c.gif\"\/><\/div>\n<p>  <i>\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u0441\u043e\u043a\u0430\u044f<\/i><\/p>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u0442\u0435\u043c, \u043a\u0430\u043a <em>\u0432\u0441\u0435<\/em> \u043d\u0435\u0447\u0451\u0442\u043d\u044b\u0435 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u044b \u0441\u0435\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u0431\u0435\u043b\u044b\u043c\u0438 \u0438\u043b\u0438 \u043a\u0440\u0430\u0441\u043d\u044b\u043c\u0438. \u0422\u043e\u0433\u0434\u0430 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u044f \u0441 \u0438\u0437\u0431\u0435\u0433\u0430\u043d\u0438\u0435\u043c \u0441\u0435\u0431\u044f, \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0435 \u0432\u0441\u044e \u0441\u0435\u0442\u043a\u0443.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/3d2\/ba3\/4f9\/3d2ba34f94fadb362c7a53f55a5a0371.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/3d2\/ba3\/4f9\/3d2ba34f94fadb362c7a53f55a5a0371.gif\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/2fb\/a75\/bb0\/2fba75bb075157c4301a42a0bdc0babb.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/2fb\/a75\/bb0\/2fba75bb075157c4301a42a0bdc0babb.gif\"\/><\/div>\n<p>  \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0434\u043b\u044f \u043b\u044e\u0431\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0434\u043b\u044f <a href=\"https:\/\/github.com\/\/mxgmn\/MarkovJunior\/blob\/main\/models\/StairsPath.xml\" rel=\"nofollow noopener noreferrer\">\u043f\u0440\u0430\u0432\u0438\u043b \u0440\u0438\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u043b\u0435\u0441\u0442\u043d\u0438\u0446<\/a> \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0434\u0432\u0435 \u0442\u043e\u0447\u043a\u0438 \u043f\u0443\u0442\u0451\u043c-\u043b\u0435\u0441\u0442\u043d\u0438\u0446\u0435\u0439. \u0418\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0434\u043b\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u0430 <code>R**\/**B=B**\/**R<\/code> \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043f\u0443\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043c\u043e\u0436\u0435\u0442 \u0434\u0432\u0438\u0433\u0430\u0442\u044c\u0441\u044f \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u044b\u0439 \u043a\u043e\u043d\u044c. \u0418\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/github.com\/\/mxgmn\/MarkovJunior\/blob\/main\/models\/CrossCountry.xml\" rel=\"nofollow noopener noreferrer\">CrossCountry<\/a> \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0434\u0432\u0435 \u0442\u043e\u0447\u043a\u0438 \u043f\u0443\u0442\u0451\u043c, \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0449\u0438\u043c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u0442\u0438\u043f\u0430\u043c \u0440\u0435\u043b\u044c\u0435\u0444\u0430. \u0418\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0434\u043b\u044f \u043d\u0430\u0431\u043e\u0440\u0430 \u043f\u0440\u0430\u0432\u0438\u043b Sokoban <code>{RB=BR RWB=BRW}<\/code> \u0440\u0435\u0448\u0430\u0435\u0442 \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043a\u0438 Sokoban \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 <a href=\"https:\/\/github.com\/\/mxgmn\/MarkovJunior\/blob\/main\/images\/multisokoban.gif\" rel=\"nofollow noopener noreferrer\">\u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043a\u0438 Sokoban \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0430\u0433\u0435\u043d\u0442\u0430\u043c\u0438<\/a>!<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c7f\/e09\/a3f\/c7fe09a3f614e47277fd42847e23bfd6.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c7f\/e09\/a3f\/c7fe09a3f614e47277fd42847e23bfd6.gif\"\/><\/div>\n<p>  \u0418\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432 MarkovJunior \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c (\u0431\u044b\u0441\u0442\u0440\u043e\u0435) \u0438\u043b\u0438 \u0434\u0432\u0443\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c (\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e\u0435, \u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u043c\u043e\u0449\u043d\u043e\u0435) \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u041e\u0434\u043d\u043e\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 \u043c\u043e\u0436\u043d\u043e \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u043e\u043b\u0435\u0439 <strong>\u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432\u0438\u043b<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u043e\u0431\u0449\u0430\u044e\u0442 \u043f\u043e\u043b\u044f \u0414\u0435\u0439\u043a\u0441\u0442\u0440\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438. \u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u0414\u0435\u0439\u043a\u0441\u0442\u0440\u044b \u2014 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u0430\u044f \u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0441\u0435\u0442\u043a\u0430\u0445 (<a href=\"https:\/\/groups.google.com\/forum\/#!topic\/rec.games.roguelike.development\/6yNIuhSerpM\" rel=\"nofollow noopener noreferrer\">1<\/a>, <a href=\"http:\/\/www.roguebasin.com\/index.php?title=The_Incredible_Power_of_Dijkstra_Maps\" rel=\"nofollow noopener noreferrer\">2<\/a>, <a href=\"http:\/\/www.roguebasin.com\/index.php?title=Dijkstra_Maps_Visualized\" rel=\"nofollow noopener noreferrer\">3<\/a>). \u041e\u043d\u0438, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043e\u0431\u043e\u0431\u0449\u0430\u044e\u0442 <a href=\"https:\/\/iquilezles.org\/www\/articles\/distfunctions\/distfunctions.htm\" rel=\"nofollow noopener noreferrer\">\u043f\u043e\u043b\u044f \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0439<\/a>, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u043a\u0435.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e, \u044d\u0442\u043e \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0446\u0435\u043b\u0435\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0438\u0436\u0438\u043c\u043e. \u041d\u043e \u0435\u0441\u043b\u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u043d\u0435\u0443\u0434\u0430\u0447\u043d\u043e, \u0442\u043e \u043c\u044b \u0442\u043e\u0447\u043d\u043e \u0437\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u0446\u0435\u043b\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0438\u0436\u0438\u043c\u0430. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0442\u043b\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0432 Sokoban \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u043a\u043e\u0433\u0434\u0430 \u044f\u0449\u0438\u043a \u0442\u043e\u043b\u043a\u0430\u044e\u0442 \u043d\u0435 \u043a \u0442\u043e\u0439 \u0441\u0442\u0435\u043d\u0435, \u0438\u043b\u0438 \u043a\u043e\u0433\u0434\u0430 \u0431\u043b\u0443\u0436\u0434\u0430\u043d\u0438\u0435 \u0441 \u0446\u0435\u043b\u044c\u044e \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u043a\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u0441\u0435\u0442\u043a\u0443 \u043d\u0430 \u0434\u0432\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438. \u0412 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a \u0431\u0443\u043b\u0435\u0432\u043e\u0439 \u044d\u0432\u0440\u0438\u0441\u0442\u0438\u043a\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0448\u0430\u0433\u043e\u0432, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u0434\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u042d\u0432\u0440\u0438\u0441\u0442\u0438\u043a\u0430 \u0441 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Admissible_heuristic\" rel=\"nofollow noopener noreferrer\">\u043f\u0440\u0438\u0435\u043c\u043b\u0435\u043c\u0430<\/a>, \u0438 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0435\u0451 \u0432 \u043f\u043e\u0438\u0441\u043a\u0435 A* \u0434\u043b\u044f \u0441\u044d\u043c\u043f\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0443\u0442\u0435\u0439, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u043c\u0438.<\/p>\n<h2>\u041d\u0435\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b<\/h2>\n<p>  <\/p>\n<ol>\n<li><strong>\u0421\u0438\u043d\u0442\u0435\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0434\u043b\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438<\/strong>. \u0414\u043e\u043a\u043b\u0430\u0434 \u0423\u0438\u043b\u044c\u044f\u043c\u0430 \u0427\u0438\u0440\u0430 <a href=\"https:\/\/youtu.be\/ed2zmmcEryw?t=1298\" rel=\"nofollow noopener noreferrer\">\u00abLevel Design in Impossible Geometry\u00bb<\/a> \u043f\u043e\u0441\u0432\u044f\u0449\u0451\u043d \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u043d\u044b\u043c \u0434\u043b\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430. \u0423\u0438\u043b\u044c\u044f\u043c \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u0438 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0438 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u0438\u0439 \u043f\u043e\u0434\u0445\u043e\u0434\u044b \u043a \u0434\u0438\u0437\u0430\u0439\u043d\u0443 \u0443\u0440\u043e\u0432\u043d\u0435\u0439. \u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u043e\u043d \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u0445\u0430\u043e\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0443\u0440\u043e\u0432\u043d\u0438, \u0430 \u043f\u043e\u0437\u0436\u0435 \u2014 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435, \u0431\u043e\u043b\u0435\u0435 \u043e\u0441\u043c\u044b\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0443\u0440\u043e\u0432\u043d\u0438, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u0434\u0435\u0435. \u0422\u0430\u043a\u0438\u0435 \u0443\u0440\u043e\u0432\u043d\u0438 \u043d\u0435 \u0431\u044b\u043b\u0438 \u043f\u0440\u043e\u0449\u0435, \u043e\u043d\u0438 \u043b\u0438\u0448\u044c \u043b\u0443\u0447\u0448\u0435 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043b\u0438\u0441\u044c \u0438 \u0432\u043e\u0441\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u043b\u0438\u0441\u044c \u0438\u0433\u0440\u043e\u043a\u0430\u043c\u0438.\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/9c\/8k\/dt\/9c8kdtox2gihif56gltdtu5r57e.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/9c\/8k\/dt\/9c8kdtox2gihif56gltdtu5r57e.jpeg\" data-blurred=\"true\"\/><\/div>\n<p>  \u041d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u043b\u0435\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a, \u043a\u0430\u043a \u0431\u0443\u0434\u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e! \u041e\u043d \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0445\u043e\u0436 \u043f\u043e \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u044f\u043c \u043d\u0430 \u043c\u043e\u0438 <a href=\"https:\/\/twitter.com\/ExUtumno\/status\/971031987304763393\" rel=\"nofollow noopener noreferrer\">\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u044b\u0435 \u0432\u043e\u043a\u0441\u0435\u043b\u044c\u043d\u044b\u0435 \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043a\u0438<\/a>. \u041c\u043e\u0436\u0435\u043c \u043b\u0438 \u043c\u044b \u043f\u0438\u0441\u0430\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u0441\u043e\u0437\u0434\u0430\u044e\u0449\u0438\u0435 \u0443\u0440\u043e\u0432\u043d\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043e\u0445\u043e\u0436\u0438 \u043d\u0430 \u043f\u0440\u0430\u0432\u044b\u0439? \u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0418\u0418 \u0433\u043e\u0442\u043e\u0432 \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0441 \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439. \u041d\u043e \u044f \u0432\u043e\u0437\u0440\u0430\u0436\u0443, \u0447\u0442\u043e \u043e\u043d\u0430 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0445\u043e\u0436\u0430 \u043d\u0430 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0433\u0435\u043d\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430\u043f\u043e\u0434\u043e\u0431\u0438\u0435 <a href=\"https:\/\/pdfs.semanticscholar.org\/555e\/13cc2dd246e3d63ceb00590605f3ff59593d.pdf\" rel=\"nofollow noopener noreferrer\">\u0437\u0430\u0434\u0430\u0447\u0438 \u0433\u0430\u0437\u043e\u043d\u043e\u043a\u043e\u0441\u0438\u043b\u043a\u0438 \u041a\u043e\u0437\u044b<\/a>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/CompleteSAW.xml\" rel=\"nofollow noopener noreferrer\">\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0433\u0430\u043c\u0438\u043b\u044c\u0442\u043e\u043d\u043e\u0432\u044b\u0445 \u043f\u0443\u0442\u0435\u0439 \u043d\u0430 \u0441\u0435\u0442\u043a\u0435<\/a>. \u0414\u0430\u0436\u0435 \u0434\u043b\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0441\u0435\u0442\u043a\u0438 \u043d\u0430\u043f\u043e\u0434\u043e\u0431\u0438\u0435 29&#215;29 \u044d\u0442\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0443\u0436\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0437\u0430\u0442\u0440\u0430\u0442\u043d\u0430. \u041d\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043b\u0438 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u0441\u044d\u043c\u043f\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043f\u0443\u0442\u0435\u0439? \u0415\u0441\u043b\u0438 \u043c\u044b \u0434\u0430\u0434\u0438\u043c \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443, \u0442\u043e \u043e\u043d, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043d\u0430\u0440\u0438\u0441\u0443\u0435\u0442 \u0441\u043f\u0438\u0440\u0430\u043b\u044c \u0438\u043b\u0438 \u0437\u0438\u0433\u0437\u0430\u0433, \u0430 \u044d\u0442\u043e \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438 \u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b, \u0447\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0433\u0430\u043c\u0438\u043b\u044c\u0442\u043e\u043d\u043e\u0432 \u043f\u0443\u0442\u044c, \u043f\u043b\u044e\u0441 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043e\u0431\u0449\u0438\u0442\u044c \u0434\u043e \u043b\u044e\u0431\u044b\u0445 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0441\u0435\u0442\u043a\u0438. \u041f\u043e\u0434\u0432\u0435\u0434\u0451\u043c \u0438\u0442\u043e\u0433: \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438\u043b\u0438 \u043d\u0430\u0439\u0442\u0438 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0433\u0430\u043c\u0438\u043b\u044c\u0442\u043e\u043d\u043e\u0432 \u043f\u0443\u0442\u044c, \u0438\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u0433\u0430\u043c\u0438\u043b\u044c\u0442\u043e\u043d\u043e\u0432\u044b \u043f\u0443\u0442\u0438. \u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0445\u043e\u0436 \u043d\u0430 \u043b\u0435\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u043b\u0430\u0439\u0434\u0430, \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u2014 \u043d\u0430 \u043f\u0440\u0430\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c. \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438 \u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b.<\/li>\n<li><strong>\u0421\u0438\u043d\u0442\u0435\u0437 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432<\/strong>. \u041f\u043e\u0445\u043e\u0436\u0435, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u2014 \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430 \u0434\u043b\u044f \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\/\u043c\u043e\u0434\u0435\u043b\u0435\u0439: \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, if \u0438\u043b\u0438 while, \u0443\u0437\u043b\u044b \u043c\u043e\u0436\u043d\u043e \u043b\u0435\u0433\u043a\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c \u0431\u0435\u0437 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u0438, \u043c\u043e\u0434\u0435\u043b\u0438 \u043b\u0435\u0433\u043a\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0449\u0438\u043c\u0438\u0441\u044f. \u0421\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0430 Random MarkovJunior \u0447\u0430\u0441\u0442\u043e \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u043d\u044b \u0438 \u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0435 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f.<br \/> \n<ol>\n<li>\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c MarkovJunior \u0438\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0438\u043b\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432?<\/li>\n<li>\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c (\u0438\u043b\u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0438), \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043b\u0438 \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeGrowth.xml\" rel=\"nofollow noopener noreferrer\">MazeGrowth<\/a> \u0438\u043b\u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeBacktracker.xml\" rel=\"nofollow noopener noreferrer\">MazeBacktracker<\/a>?<\/li>\n<li>\u0420\u0435\u0448\u0438\u0442\u044c <a href=\"https:\/\/www.kaggle.com\/c\/abstraction-and-reasoning-challenge\" rel=\"nofollow noopener noreferrer\">Abstraction and Reasoning Challenge<\/a> \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441\u043e\u043c \u043c\u043e\u0434\u0435\u043b\u0435\u0439 MarkovJunior. \u041f\u0440\u0438\u043c\u044b\u043a\u0430\u044e\u0449\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044f \u0438\u0437 ARC \u0441 \u0446\u0435\u043b\u044c\u044e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0433\u043e DSL \u0434\u043b\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0441\u0435\u0442\u043a\u0435.<\/li>\n<\/ol>\n<\/li>\n<li><strong>\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0432 \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435<\/strong>. \u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u0421\u0432\u044f\u0437\u0430\u043d\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430: \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b (\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 MarkovJunior) \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u044d\u043d\u0435\u0440\u0433\u0438\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u044d\u043d\u0435\u0440\u0433\u0438\u0438 \u0418\u0437\u0438\u043d\u0433\u0430 \u0438\u043b\u0438 \u044d\u043d\u0435\u0440\u0433\u0438\u0438 ConvChain.<\/li>\n<li>\u041e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u0430.<\/li>\n<li>\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 MarkovJunior \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 (\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0435\u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u044b\u0445) \u0441\u0435\u0442\u043a\u0430\u0445 \u0438\u043b\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u0433\u0440\u0430\u0444\u0430\u0445.<\/li>\n<li>\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0441 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043c\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u041c\u0430\u0440\u043a\u043e\u0432\u0430. \u041c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c MarkovJunior \u0432 \u0438\u0433\u0440\u0443, \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0432 \u043d\u0430\u0436\u0430\u0442\u0438\u044f\u043c \u043a\u043b\u0430\u0432\u0438\u0448 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0438\u043b\u0438 \u0443\u0437\u043b\u044b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438.<\/li>\n<li>\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0441\u0435\u0442\u043a\u0430\u0445. <a href=\"https:\/\/twitter.com\/ExUtumno\/status\/1141354217774428160\" rel=\"nofollow noopener noreferrer\">ModernHouse<\/a> \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0441\u0442\u0438\u0433 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u043b\u044e\u0434\u044c\u043c\u0438 \u0434\u043e\u043c\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/www.thesimsresource.com\/downloads\/browse\/category\/sims2-lots\/featured\/1\/search\/modern%20house\/\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043c\u043e\u0432 \u0432 Sims 2<\/a>. \u041d\u0443\u0436\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0442\u043e\u043d\u043a\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f.<\/li>\n<\/ol>\n<p>  <\/p>\n<h2>\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438<\/h2>\n<p>  \u041f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438 \u0422\u044c\u044e\u0440\u0438\u043d\u0433\u0430 \u0438 \u043b\u044f\u043c\u0431\u0434\u0430-\u0438\u0441\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435\u043c, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u0438 \u043a\u0440\u0430\u0442\u0447\u0430\u0439\u0448\u0438\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0436\u0435 \u0442\u0430\u043a\u043e\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c.<\/p>\n<p>  \u0423\u043f\u0440\u0430\u0436\u043d\u0435\u043d\u0438\u0435: \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u043e\u0431\u0449\u0438\u0439 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b, \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0432 \u0443\u043d\u0430\u0440\u043d\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c \u0435\u0433\u043e \u043a <code>111111*1111111111<\/code>, \u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043c <code>11<\/code>.<\/p>\n<pre><code class=\"plaintext\">1a=a1 1*1=a* 1*=*b b=1 a=c c=1 *=\u03b5 (\u043e\u0441\u0442\u0430\u043d\u043e\u0432)<\/code><\/pre>\n<p>  <b>\u0411\u044b\u0441\u0442\u0440\u043e\u0435 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u043e\u0432.<\/b> \u0421\u044d\u043c\u043f\u043b\u044b \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0430 MarkovJunior \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442 \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e, \u043d\u043e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u043e\u043d \u043d\u0435 \u0441\u043a\u0430\u043d\u0438\u0440\u0443\u0435\u0442 \u0432\u0441\u044e \u0441\u0435\u0442\u043a\u0443. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u043e\u0432, \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f \u0438 \u0438\u0449\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u043a\u0440\u0443\u0433 \u0438\u0437\u043c\u0435\u043d\u0438\u0432\u0448\u0438\u0445\u0441\u044f \u0443\u0447\u0430\u0441\u0442\u043a\u043e\u0432. \u041a\u043e\u0433\u0434\u0430 \u0443\u0437\u0435\u043b \u043f\u0440\u0430\u0432\u0438\u043b \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437, \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 MarkovJunior \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043c\u043d\u043e\u0433\u043e\u043c\u0435\u0440\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e <a href=\"https:\/\/en.wikipedia.org\/wiki\/Boyer%E2%80%93Moore_string-search_algorithm\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0411\u043e\u0439\u0435\u0440\u0430-\u041c\u0443\u0440\u0430<\/a>.<br \/>  <b>\u0421\u0442\u043e\u0445\u0430\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0440\u0435\u043b\u0430\u043a\u0441\u0430\u0446\u0438\u044f.<\/b> \u0423\u0437\u043b\u044b \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0438\u043c\u0435\u044e\u0442 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043a\u0430\u043a \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0443\u0437\u043b\u043e\u0432. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0435\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u043e\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u0443 <code>r<\/code> \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0432\u0435\u0441 <code>w(r)<\/code>. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043d\u0430\u0445\u043e\u0434\u0438\u0442 \u0432\u0441\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e \u0411\u043e\u043b\u044c\u0446\u043c\u0430\u043d\u0430 <code>p(r) ~ exp(-w(r)\/t)<\/code>. \u041d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0433\u0440\u0430\u043d\u0438\u0446\u0435 \u0437\u0430\u043c\u0435\u0440\u0437\u0430\u043d\u0438\u044f <code>t->0<\/code>, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0443\u0437\u0435\u043b \u041c\u0430\u0440\u043a\u043e\u0432\u0430, \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0439 \u043f\u043e \u0432\u0435\u0441\u0430\u043c. \u0412 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0442\u043e, \u0447\u0442\u043e \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 <code>t>0<\/code> \u0438 \u0434\u043b\u044f \u0442\u0438\u043f\u0438\u0447\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043e\u0442\u0441\u0447\u0451\u0442\u0430 \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442\u0441\u0447\u0451\u0442\u0430 \u0432 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u043e\u043d\u0430\u0445 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 (\u0438 \u0433\u043b\u0430\u0434\u043a\u043e\u0439 \u0434\u043b\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0439) \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u0432\u0435\u0441\u043e\u0432. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u0435\u0441\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0441\u043f\u0443\u0441\u043a\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u043c\u043e\u0440\u043e\u0437\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u0443\u044e \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443.<\/p>\n<p>  \u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u044d\u0442\u043e <a href=\"https:\/\/www.jstor.org\/stable\/27641983\" rel=\"nofollow noopener noreferrer\">\u044d\u0441\u0441\u0435<\/a> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Boris_Kushner_(mathematician)\" rel=\"nofollow noopener noreferrer\">\u0411\u043e\u0440\u0438\u0441\u0430 \u041a\u0443\u0448\u043d\u0435\u0440\u0430<\/a> \u043e\u0431 \u0410.\u0410. \u041c\u0430\u0440\u043a\u043e\u0432\u0435 \u0438 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0445 \u043f\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0435.<\/p>\n<h2>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0442\u0440\u0443\u0434\u044b<\/h2>\n<p>  \u0413\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u0443\u0434:<\/p>\n<ol>\n<li>\u0410\u043d\u0434\u0440\u0435\u0439 \u0410. \u041c\u0430\u0440\u043a\u043e\u0432, <a href=\"http:\/\/www.mathnet.ru\/php\/archive.phtml?wshow=paper&amp;amp;jrnid=tm&amp;amp;paperid=1117&amp;amp;option_lang=eng\" rel=\"nofollow noopener noreferrer\">The Theory of Algorithms<\/a>, 1951 \u0433\u043e\u0434. \u041c\u0430\u0440\u043a\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u044d\u0442\u0438 \u0438\u0434\u0435\u0438 \u0435\u0449\u0451 \u0432 1947 \u0433\u043e\u0434\u0443 \u0434\u043b\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043d\u0435\u0440\u0430\u0437\u0440\u0435\u0448\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u0442\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0441\u043b\u043e\u0432 \u0432 \u043f\u043e\u043b\u0443\u0433\u0440\u0443\u043f\u043f\u0430\u0445. \u0421\u043c. \u0442\u0430\u043a\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u044e\u044e <a href=\"http:\/\/www.mathnet.ru\/php\/archive.phtml?wshow=paper&amp;amp;jrnid=tm&amp;amp;paperid=1178&amp;amp;option_lang=eng\" rel=\"nofollow noopener noreferrer\">\u043a\u043d\u0438\u0433\u0443<\/a> \u0441 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u043c \u0440\u0430\u0437\u0431\u043e\u0440\u043e\u043c. \u042f \u0431\u044b\u043b \u0431\u044b \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d \u0437\u0430 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044b \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435.<\/li>\n<li>Guilherme S. Tows, <a href=\"https:\/\/zaratustra.itch.io\/imagegram\" rel=\"nofollow noopener noreferrer\">Imagegram<\/a>, 2009 \u0433\u043e\u0434. \u0423\u0437\u043b\u044b forall \u0434\u043b\u044f MarkovJunior \u0432\u0437\u044f\u0442\u044b \u0438\u0437 Imagegram.<\/li>\n<li>\u0412\u0430\u043b\u0435\u043d\u0442\u0438\u043d \u0422\u0443\u0440\u0447\u0438\u043d, <a href=\"http:\/\/fprog.ru\/2011\/issue7\/practice-fp-7-screen.pdf\" rel=\"nofollow noopener noreferrer\">REFAL language<\/a>, 1968 \u0433\u043e\u0434. \u0418\u0434\u0435\u044f \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432 \u041c\u0430\u0440\u043a\u043e\u0432\u0430 \u0432\u0437\u044f\u0442\u0430 \u0438\u0437 \u0420\u0435\u0444\u0430\u043b\u0430.<\/li>\n<li>Brian Walker et al., <a href=\"https:\/\/groups.google.com\/forum\/#!topic\/rec.games.roguelike.development\/6yNIuhSerpM\" rel=\"nofollow noopener noreferrer\">The incredible power of Dijkstra maps<\/a>, 2010 \u0433\u043e\u0434. \u041e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 roguelike, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u0445\u043d\u0438\u043a \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0440\u0442\/\u043f\u043e\u043b\u0435\u0439 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0414\u0435\u0439\u043a\u0441\u0442\u0440\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430 NPC. \u0414\u0440\u0443\u0433\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438: <a href=\"http:\/\/www.roguebasin.com\/index.php?title=The_Incredible_Power_of_Dijkstra_Maps\" rel=\"nofollow noopener noreferrer\">1<\/a>, <a href=\"http:\/\/www.roguebasin.com\/index.php?title=Dijkstra_Maps_Visualized\" rel=\"nofollow noopener noreferrer\">2<\/a>. \u041c\u044b \u043e\u0431\u043e\u0431\u0449\u0430\u0435\u043c \u043a\u0430\u0440\u0442\u044b \u0414\u0435\u0439\u043a\u0441\u0442\u0440\u044b \u0434\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438.<\/li>\n<li>Pavlos S. Efraimidis, Paul Spirakis, <a href=\"https:\/\/utopia.duth.gr\/~pefraimi\/research\/data\/2007EncOfAlg.pdf\" rel=\"nofollow noopener noreferrer\">Weighted Random Sampling<\/a>, 2005 \u0433\u043e\u0434.<\/li>\n<li>\u0420\u0430\u0431\u043e\u0442\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432: <a href=\"http:\/\/graphics.stanford.edu\/~pmerrell\/thesis.pdf\" rel=\"nofollow noopener noreferrer\">Model Synthesis<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/WaveFunctionCollapse\" rel=\"nofollow noopener noreferrer\">Wave Function Collapse Algorithm<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/ConvChain\" rel=\"nofollow noopener noreferrer\">ConvChain Algorithm<\/a>.<\/li>\n<li>\u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b: <a href=\"https:\/\/en.wikipedia.org\/wiki\/Local_consistency\" rel=\"nofollow noopener noreferrer\">\u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439<\/a>, <a href=\"https:\/\/www.cs.ubc.ca\/~mack\/Publications\/AI77.pdf\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439<\/a>, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Graph_traversal\" rel=\"nofollow noopener noreferrer\">\u043e\u0431\u0445\u043e\u0434 \u0433\u0440\u0430\u0444\u043e\u0432<\/a>, <a href=\"https:\/\/www.cs.auckland.ac.nz\/courses\/compsci709s2c\/resources\/Mike.d\/astarNilsson.pdf\" rel=\"nofollow noopener noreferrer\">\u043f\u043e\u0438\u0441\u043a A*<\/a>.<\/li>\n<\/ol>\n<p>  \u0421\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<ol>\n<li>Daniel Ritchie, <a href=\"https:\/\/dritchie.github.io\/pdf\/thesis.pdf\" rel=\"nofollow noopener noreferrer\">Probabilistic Programming for Procedural Modeling and Design<\/a>, 2016 \u0433\u043e\u0434.<\/li>\n<li>Lingfeng Yang, <a href=\"https:\/\/stacks.stanford.edu\/file\/druid:kq822ym0815\/et2si-reduced-opt-augmented.pdf\" rel=\"nofollow noopener noreferrer\">From Execution Traces to Specialized Inference<\/a>, 2015 \u0433\u043e\u0434.<\/li>\n<\/ol>\n<p>  \u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432:<\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/BasicKeys.xml\" rel=\"nofollow noopener noreferrer\">BasicKeys<\/a> \u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Keys.xml\" rel=\"nofollow noopener noreferrer\">Keys<\/a> \u2014 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0445 \u0433\u0440\u0430\u043c\u043c\u0430\u0442\u0438\u043a, \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0419\u043e\u0440\u0438\u0441\u043e\u043c \u0414\u043e\u0440\u043c\u0430\u043d\u0441\u043e\u043c \u0432 <a href=\"https:\/\/www.illc.uva.nl\/Research\/Publications\/Dissertations\/DS-2012-12.text.pdf\" rel=\"nofollow noopener noreferrer\">Engineering Emergence: Applied Theory for Game Design<\/a>, 2012 \u0433\u043e\u0434. \u041e\u043d\u0438, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u043c \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0414\u044d\u0432\u0438\u0434\u0430 \u0410\u0434\u0430\u043c\u0441\u0430 <a href=\"https:\/\/pdfs.semanticscholar.org\/2502\/0f8d955aee07b7dd49a3ec23b1f2a8cf1d06.pdf\" rel=\"nofollow noopener noreferrer\">Automatic Generation of Dungeons for Computer Games<\/a>, 2002 \u0433\u043e\u0434. \u042f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u044e \u044d\u0442\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043e\u043a \u00ab\u043a\u043b\u044e\u0447-\u0437\u0430\u043c\u043e\u043a-\u043c\u043e\u0441\u0442\u00bb \u0432 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/SeaVilla.xml\" rel=\"nofollow noopener noreferrer\">SeaVilla<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/CarmaTower.xml\" rel=\"nofollow noopener noreferrer\">CarmaTower<\/a> \u2014 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f <a href=\"https:\/\/twitter.com\/Sir_carma\/status\/851883489628704768\" rel=\"nofollow noopener noreferrer\">\u0432\u043e\u043a\u0441\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0446\u0435\u043d\u044b<\/a> \u0410\u043d\u0442\u0443\u0430\u043d\u0430 \u041b\u0435\u043d\u0434\u0440\u0435\u0432\u0438.<\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u044c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/NystromDungeon.xml\" rel=\"nofollow noopener noreferrer\">NystromDungeon<\/a> \u2014 \u044d\u0442\u043e \u043f\u043e\u0440\u0442 <a href=\"https:\/\/journal.stuffwithstuff.com\/2014\/12\/21\/rooms-and-mazes\/\" rel=\"nofollow noopener noreferrer\">\u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043f\u043e\u0434\u0437\u0435\u043c\u0435\u043b\u0438\u0439 \u0411\u043e\u0431\u0430 \u041d\u0438\u0441\u0442\u0440\u043e\u043c\u0430<\/a> \u0434\u043b\u044f MarkovJunior.<\/li>\n<li>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/HamiltonianPath.xml\" rel=\"nofollow noopener noreferrer\">HamiltonianPath<\/a> \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u0438\u0437 <a href=\"http:\/\/aip.scitation.org\/doi\/pdf\/10.1063\/1.443937\" rel=\"nofollow noopener noreferrer\">\u044d\u0442\u043e\u0439<\/a> \u0441\u0442\u0430\u0442\u044c\u0438. \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u0435\u0433\u043e \u0441 <a href=\"http:\/\/clisby.net\/projects\/hamiltonian_path\/hamiltonian_path_v1.html\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439<\/a> \u043d\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435.<\/li>\n<li>\u0424\u043e\u0440\u043c\u044b \u043a\u043e\u043c\u043d\u0430\u0442 \u0432 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/DungeonGrowth.xml\" rel=\"nofollow noopener noreferrer\">DungeonGrowth<\/a> \u0432\u0437\u044f\u0442\u044b \u0438\u0437 <a href=\"https:\/\/old.reddit.com\/r\/proceduralgeneration\/comments\/3pa8a1\/my_take_at_a_roguelike_level_generator_ft\/\" rel=\"nofollow noopener noreferrer\">\u043f\u043e\u0441\u0442\u0430 \u043d\u0430 r\/proceduralgeneration<\/a>. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 MarkovJunior \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u043e\u0441\u0442\u0435 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438.<\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u044c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Wilson.xml\" rel=\"nofollow noopener noreferrer\">Wilson<\/a> \u2014 \u044d\u0442\u043e \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0430 \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Loop-erased_random_walk#Uniform_spanning_tree\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0423\u0438\u043b\u0441\u043e\u043d\u0430<\/a>. \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u0435\u0451 \u0441 <a href=\"https:\/\/bl.ocks.org\/mbostock\/11357811\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439<\/a> \u043d\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435.<\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u044c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MazeGrowth.xml\" rel=\"nofollow noopener noreferrer\">MazeGrowth<\/a> \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430 \u043a\u0430\u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043b\u0430\u0431\u0438\u0440\u0438\u043d\u0442\u043e\u0432 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u043e\u0431\u0445\u043e\u0434\u0430 (maze generation via random traversal). \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u0435\u0451 \u0441 <a href=\"https:\/\/bl.ocks.org\/mbostock\/70a28267db0354261476\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439<\/a> \u043d\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Growth.xml\" rel=\"nofollow noopener noreferrer\">Growth<\/a> \u0442\u0435\u0441\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u0430 \u0441 <a href=\"http:\/\/digitalassets.lib.berkeley.edu\/math\/ucb\/text\/math_s4_v4_article-15.pdf\" rel=\"nofollow noopener noreferrer\">\u043c\u043e\u0434\u0435\u043b\u044c\u044e \u0440\u043e\u0441\u0442\u0430 \u0418\u0434\u0435\u043d\u0430<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/BernoulliPercolation.xml\" rel=\"nofollow noopener noreferrer\">BernoulliPercolation<\/a> \u2014 \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u0438\u0437\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Percolation_theory\" rel=\"nofollow noopener noreferrer\">\u0442\u0435\u043e\u0440\u0438\u0438 \u043f\u0435\u0440\u043a\u043e\u043b\u044f\u0446\u0438\u0438<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/NestedGrowth.xml\" rel=\"nofollow noopener noreferrer\">NestedGrowth<\/a> \u0432\u0437\u044f\u0442\u0430 \u0438\u0437 <a href=\"https:\/\/zaratustra.itch.io\/imagegram\" rel=\"nofollow noopener noreferrer\">Imagegram<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/SmoothTrail.xml\" rel=\"nofollow noopener noreferrer\">SmoothTrail<\/a> \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0438\u0437 <a href=\"https:\/\/twitter.com\/128_mhz\/status\/953847394403205120\" rel=\"nofollow noopener noreferrer\">\u0442\u0432\u0438\u0442\u0430 128_mhz<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/SokobanLevel1.xml\" rel=\"nofollow noopener noreferrer\">SokobanLevel1<\/a>, \u043f\u043e\u0445\u043e\u0436\u0435, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u043c \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u0438\u0437 \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043a\u0438 Sokoban \u0425\u0438\u0440\u043e\u044e\u043a\u0438 \u0418\u043c\u0430\u0431\u0430\u044f\u0441\u0438. <a href=\"\/mxgmn\/MarkovJunior\/blob\/main\/models\/SokobanLevel2.xml\">SokobanLevel2<\/a> \u2014 \u044d\u0442\u043e <a href=\"https:\/\/www.sokobanonline.com\/play\/web-archive\/razorflame\/ionic-catalysts-xi\/58022_ionic-catalysts-xi-452\" rel=\"nofollow noopener noreferrer\">\u0443\u0440\u043e\u0432\u0435\u043d\u044c 452<\/a> \u0438\u0437 \u043d\u0430\u0431\u043e\u0440\u0430 Ionic Catalysts XI.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/RainbowGrowth.xml\" rel=\"nofollow noopener noreferrer\">RainbowGrowth<\/a> \u0431\u044b\u043b\u0430 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/discussions\/25\" rel=\"nofollow noopener noreferrer\">\u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0430<\/a> \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c <a href=\"https:\/\/github.com\/mure\" rel=\"nofollow noopener noreferrer\">mure<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MultiHeadedWalk.xml\" rel=\"nofollow noopener noreferrer\">MultiHeadedWalk<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MultiHeadedDungeon.xml\" rel=\"nofollow noopener noreferrer\">MultiHeadedDungeon<\/a> \u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/MultiHeadedWalkDungeon.xml\" rel=\"nofollow noopener noreferrer\">MultiHeadedWalkDungeon<\/a> <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/discussions\/38\" rel=\"nofollow noopener noreferrer\">\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b<\/a> \u043d\u0430 \u0438\u0434\u0435\u0435 <a href=\"https:\/\/github.com\/Inferdy\" rel=\"nofollow noopener noreferrer\">\u0418\u043b\u044c\u0438 \u041a\u0443\u0434\u0440\u0438\u0446\u043a\u043e\u0433\u043e<\/a>.<\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u044c <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Island.xml\" rel=\"nofollow noopener noreferrer\">Island<\/a> \u0441\u043e\u0437\u0434\u0430\u043d\u0430 <a href=\"https:\/\/github.com\/woldendans\/MJ-simple-island\" rel=\"nofollow noopener noreferrer\">\u0413\u0438\u0439\u043e\u043c\u043e\u043c \u0424\u044c\u0435\u0442\u043e\u043c<\/a>.<\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/LostCity.xml\" rel=\"nofollow noopener noreferrer\">LostCity<\/a>, <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Forest.xml\" rel=\"nofollow noopener noreferrer\">Forest<\/a> \u0438 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/blob\/main\/models\/Texture.xml\" rel=\"nofollow noopener noreferrer\">Texture<\/a> \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/github.com\/kaya3\/pattern-match-2d\" rel=\"nofollow noopener noreferrer\">\u042d\u043d\u0434\u0440\u044e \u041a\u044d\u044f<\/a>.<\/li>\n<\/ol>\n<p>  \u0412\u043e\u043a\u0441\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u044b \u043e\u0442\u0440\u0435\u043d\u0434\u0435\u0440\u0435\u043d\u044b \u0432 <a href=\"https:\/\/ephtracy.github.io\/\" rel=\"nofollow noopener noreferrer\">MagicaVoxel<\/a>, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 <a href=\"https:\/\/github.com\/ephtracy\" rel=\"nofollow noopener noreferrer\">ephtracy<\/a>. \u041e\u0441\u043e\u0431\u0430\u044f \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u044c <a href=\"https:\/\/github.com\/unormal\" rel=\"nofollow noopener noreferrer\">\u0411\u0440\u0430\u0439\u0430\u043d\u0443 \u0411\u0430\u043a\u043b\u044c\u044e<\/a> \u0437\u0430 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043c\u043e\u0449\u0438 \u043f\u043e\u043b\u0435\u0439 \u0414\u0435\u0439\u043a\u0441\u0442\u0440\u044b \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0443\u0440\u043e\u0432\u043d\u0435\u0439 roguelike \u0438 <a href=\"https:\/\/github.com\/kchapelier\" rel=\"nofollow noopener noreferrer\">\u041a\u0435\u0432\u0438\u043d\u0443 \u0428\u0430\u043f\u0435\u043b\u044c\u0435<\/a> \u0437\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0445\u043e\u0440\u043e\u0448\u0438\u0445 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043e\u043a. \u0412 GUI \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u0448\u0440\u0438\u0444\u0442 <a href=\"https:\/\/github.com\/sunaku\/tamzen-font\" rel=\"nofollow noopener noreferrer\">Tamzen<\/a>.<\/p>\n<h2>\u041a\u0430\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0441\u0431\u043e\u0440\u043a\u0443<\/h2>\n<p>  \u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 MarkovJunior \u2014 \u044d\u0442\u043e \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0437\u0430\u0432\u0438\u0441\u044f\u0449\u0435\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 <a href=\"https:\/\/dotnet.microsoft.com\/download\" rel=\"nofollow noopener noreferrer\">.NET Core<\/a> \u0434\u043b\u044f Windows, Linux \u0438\u043b\u0438 macOS \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<pre><code class=\"plaintext\">dotnet run --configuration Release MarkovJunior.csproj<\/code><\/pre>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 <a href=\"https:\/\/github.com\/mxgmn\/MarkovJunior\/releases\" rel=\"nofollow noopener noreferrer\">\u0440\u0435\u043b\u0438\u0437<\/a> \u0434\u043b\u044f Windows.<\/p>\n<p>  \u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043f\u043e\u043c\u0435\u0449\u0430\u044e\u0442\u0441\u044f \u0432 \u043f\u0430\u043f\u043a\u0443 <code>output<\/code>. \u0414\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0442\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0439\u0442\u0435 <code>models.xml<\/code>. \u0424\u0430\u0439\u043b\u044b <code>.vox<\/code> \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <a href=\"https:\/\/ephtracy.github.io\/\" rel=\"nofollow noopener noreferrer\">MagicaVoxel<\/a>.<\/p>\n<h2>\u0412\u0430\u0436\u043d\u044b\u0435 \u043f\u043e\u0440\u0442\u044b, \u0444\u043e\u0440\u043a\u0438 \u0438 \u0441\u043f\u0438\u043d\u043e\u0444\u0444\u044b<\/h2>\n<p>  <\/p>\n<ul>\n<li>Yuu \u0441\u043e\u0437\u0434\u0430\u043b <a href=\"https:\/\/github.com\/Yuu6883\/MarkovJuniorWeb\" rel=\"nofollow noopener noreferrer\">\u0432\u0435\u0440\u0441\u0438\u044e MarkovJunior \u043d\u0430 TypeScript<\/a>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f <a href=\"https:\/\/yuu6883.github.io\/MarkovJuniorWeb\/\" rel=\"nofollow noopener noreferrer\">\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u0432\u0435\u0431\u0435<\/a>, \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u0442 \u044f\u0437\u044b\u043a \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u0443\u0437\u043b\u043e\u0432 \u043a \u043d\u0430\u0436\u0430\u0442\u0438\u044f\u043c \u043a\u043b\u0430\u0432\u0438\u0448.<\/li>\n<li>Aseaday <a href=\"https:\/\/github.com\/aseaday\/MarkovJunior.js\" rel=\"nofollow noopener noreferrer\">\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u0442<\/a> MarkovJunior \u043d\u0430 JavaScript.<\/li>\n<li>\u042d\u043d\u0434\u0440\u044e \u041a\u044d\u0439 \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c\u0443 \u043a\u043e\u0434\u0443 \u043d\u0430 C# <a href=\"https:\/\/github.com\/kaya3\/MarkovJunior-docs\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043f\u043e XML<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/dogles\" rel=\"nofollow noopener noreferrer\">\u0414\u044d\u043d \u041e\u0433\u043b\u0441<\/a> \u043d\u0430\u043f\u0438\u0441\u0430\u043b <a href=\"https:\/\/gist.github.com\/dogles\/a926ab890552cc7e45400a930398449d\" rel=\"nofollow noopener noreferrer\">\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u043c\u0435\u0442\u043a\u0438<\/a> \u043f\u043e MarkovJunior \u0441 \u0443\u043f\u043e\u0440\u043e\u043c \u043d\u0430 \u043f\u043e\u043b\u044f \u0438 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441.<\/li>\n<li>\u042d\u043d\u0434\u0440\u044e \u041a\u044d\u0439 \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b <a href=\"https:\/\/github.com\/kaya3\/MJr\" rel=\"nofollow noopener noreferrer\">MJr<\/a> \u2014 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u044f\u0437\u044b\u043a, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u043e\u0432.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/721314\/\"> https:\/\/habr.com\/ru\/articles\/721314\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/de1\/568\/5a5\/de15685a5dfba20350816cd4350f1516.gif\"\/><\/div>\n<p>  MarkovJunior \u2014 \u044d\u0442\u043e \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u043d\u044b\u0439 \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438, \u0430 \u0438\u043d\u0444\u0435\u0440\u0435\u043d\u0441 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. MarkovJunior \u043d\u0430\u0437\u0432\u0430\u043d \u0432 \u0447\u0435\u0441\u0442\u044c \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Andrey_Markov,_Jr.\" rel=\"nofollow noopener noreferrer\">\u0410\u043d\u0434\u0440\u0435\u044f \u0410\u043d\u0434\u0440\u0435\u0435\u0432\u0438\u0447\u0430 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/a>, \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0432\u0448\u0435\u0433\u043e \u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0432\u0448\u0435\u0433\u043e \u0442\u043e, \u0447\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Markov_algorithm\" rel=\"nofollow noopener noreferrer\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u043c\u0438 \u041c\u0430\u0440\u043a\u043e\u0432\u0430<\/a>.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-385670","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/385670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=385670"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/385670\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=385670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=385670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=385670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}