{"id":92,"date":"2021-03-31T02:18:32","date_gmt":"2021-03-31T02:18:32","guid":{"rendered":"http:\/\/learnlearn.uk\/algorithms\/?page_id=92"},"modified":"2024-11-21T10:39:40","modified_gmt":"2024-11-21T10:39:40","slug":"maze-solving-algorithms","status":"publish","type":"page","link":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/","title":{"rendered":"Maze Solving Algorithms"},"content":{"rendered":"<div class=\"responsive-tabs\">\n<h2 class=\"tabtitle\">Online Activities<\/h2>\n<div class=\"tabcontent\">\n\n<h3>Blockly Maze<\/h3>\n<p>See how far you can get through solving the mazes with the Blockly Maze Challenges<\/p>\n<p><a href=\"https:\/\/blockly.games\/maze\">https:\/\/blockly.games\/maze<\/a><\/p>\n<p>&nbsp;<\/p>\n<h3>Vex VR Robot Maze Solving<\/h3>\n<p><a href=\"https:\/\/vr.vex.com\/\">https:\/\/vr.vex.com\/<\/a><\/p>\n\n<\/div><h2 class=\"tabtitle\">Video Introduction<\/h2>\n<div class=\"tabcontent\">\n\n<div class=\"nv-iframe-embed\">\n<div class=\"container-lazyload preview-lazyload container-youtube js-lazyload--not-loaded\"><a href=\"https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI\" class=\"lazy-load-youtube preview-lazyload preview-youtube\" data-video-title=\"Maze Solving - Computerphile\" title=\"Play video &quot;Maze Solving - Computerphile&quot;\">https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI<\/a><noscript>Video can&#8217;t be loaded because JavaScript is disabled: <a href=\"https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI\" title=\"Maze Solving - Computerphile\">Maze Solving &#8211; Computerphile (https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI)<\/a><\/noscript><\/div>\n<\/div>\n<p>&nbsp;<\/p>\n\n<\/div><h2 class=\"tabtitle\">Python Maze Solving<\/h2>\n<div class=\"tabcontent\">\n\n<p><!-- HTML generated using hilite.me --><\/p>\n<div style=\"background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;\">\n<pre style=\"margin: 0; line-height: 125%;\"><span style=\"color: #008800; font-weight: bold;\">import<\/span> <span style=\"color: #0e84b5; font-weight: bold;\">csv<\/span><span style=\"color: #333333;\">,<\/span><span style=\"color: #0e84b5; font-weight: bold;\">os<\/span><span style=\"color: #333333;\">,<\/span><span style=\"color: #0e84b5; font-weight: bold;\">time<\/span><span style=\"color: #333333;\">,<\/span><span style=\"color: #0e84b5; font-weight: bold;\">sys<\/span><span style=\"color: #333333;\">,<\/span><span style=\"color: #0e84b5; font-weight: bold;\">random<\/span>\r\n\r\n<span style=\"color: #008800; font-weight: bold;\">def<\/span> <span style=\"color: #0066bb; font-weight: bold;\">get_maze<\/span>(<span style=\"color: #007020;\">file<\/span>):\r\n    f <span style=\"color: #333333;\">=<\/span> <span style=\"color: #007020;\">open<\/span>(<span style=\"color: #007020;\">file<\/span>,<span style=\"background-color: #fff0f0;\">'r'<\/span>)\r\n    reader <span style=\"color: #333333;\">=<\/span> csv<span style=\"color: #333333;\">.<\/span>reader(f)\r\n    maze <span style=\"color: #333333;\">=<\/span> []\r\n    <span style=\"color: #008800; font-weight: bold;\">for<\/span> line <span style=\"color: #000000; font-weight: bold;\">in<\/span> reader:\r\n        maze<span style=\"color: #333333;\">.<\/span>append(line)\r\n    <span style=\"color: #008800; font-weight: bold;\">return<\/span> maze\r\n\r\n<span style=\"color: #008800; font-weight: bold;\">def<\/span> <span style=\"color: #0066bb; font-weight: bold;\">display_maze<\/span>(m, path):\r\n    m2 <span style=\"color: #333333;\">=<\/span> m[:]\r\n    os<span style=\"color: #333333;\">.<\/span>system(<span style=\"background-color: #fff0f0;\">'cls'<\/span>) <span style=\"color: #888888;\"># windows use 'cls'<\/span>\r\n    \r\n    <span style=\"color: #008800; font-weight: bold;\">for<\/span> item <span style=\"color: #000000; font-weight: bold;\">in<\/span> path:\r\n        m2[item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]][item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]] <span style=\"color: #333333;\">=<\/span> <span style=\"background-color: #fff0f0;\">\".\"<\/span>\r\n    m2[path[<span style=\"color: #333333;\">-<\/span><span style=\"color: #0000dd; font-weight: bold;\">1<\/span>][<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]][path[<span style=\"color: #333333;\">-<\/span><span style=\"color: #0000dd; font-weight: bold;\">1<\/span>][<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]] <span style=\"color: #333333;\">=<\/span> <span style=\"background-color: #fff0f0;\">\"M\"<\/span>\r\n    \r\n    draw <span style=\"color: #333333;\">=<\/span> <span style=\"background-color: #fff0f0;\">\"\"<\/span>\r\n    \r\n    <span style=\"color: #008800; font-weight: bold;\">for<\/span> row <span style=\"color: #000000; font-weight: bold;\">in<\/span> m2:\r\n        <span style=\"color: #008800; font-weight: bold;\">for<\/span> item <span style=\"color: #000000; font-weight: bold;\">in<\/span> row:\r\n            item <span style=\"color: #333333;\">=<\/span> <span style=\"color: #007020;\">str<\/span>(item)<span style=\"color: #333333;\">.<\/span>replace(<span style=\"background-color: #fff0f0;\">\"1\"<\/span>,<span style=\"background-color: #fff0f0;\">\"\u2588\"<\/span>)\r\n            item <span style=\"color: #333333;\">=<\/span> <span style=\"color: #007020;\">str<\/span>(item)<span style=\"color: #333333;\">.<\/span>replace(<span style=\"background-color: #fff0f0;\">\"2\"<\/span>,<span style=\"background-color: #fff0f0;\">\" \"<\/span>)\r\n            item <span style=\"color: #333333;\">=<\/span> <span style=\"color: #007020;\">str<\/span>(item)<span style=\"color: #333333;\">.<\/span>replace(<span style=\"background-color: #fff0f0;\">\"0\"<\/span>,<span style=\"background-color: #fff0f0;\">\" \"<\/span>)\r\n            \r\n            draw <span style=\"color: #333333;\">+=<\/span> item\r\n        draw <span style=\"color: #333333;\">+=<\/span> <span style=\"background-color: #fff0f0;\">\"<\/span><span style=\"color: #666666; font-weight: bold; background-color: #fff0f0;\">\\n<\/span><span style=\"background-color: #fff0f0;\">\"<\/span>\r\n    <span style=\"color: #008800; font-weight: bold;\">print<\/span>(draw)\r\n   \r\n<span style=\"color: #008800; font-weight: bold;\">def<\/span> <span style=\"color: #0066bb; font-weight: bold;\">move<\/span>(path):\r\n    time<span style=\"color: #333333;\">.<\/span>sleep(<span style=\"color: #6600ee; font-weight: bold;\">0.3<\/span>)\r\n    cur <span style=\"color: #333333;\">=<\/span> path[<span style=\"color: #333333;\">-<\/span><span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]\r\n    display_maze(maze,path)\r\n    possibles <span style=\"color: #333333;\">=<\/span> [(cur[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>],cur[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>] <span style=\"color: #333333;\">+<\/span> <span style=\"color: #0000dd; font-weight: bold;\">1<\/span>),(cur[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>],cur[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]<span style=\"color: #333333;\">-<\/span> <span style=\"color: #0000dd; font-weight: bold;\">1<\/span>),(cur[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>] <span style=\"color: #333333;\">+<\/span> <span style=\"color: #0000dd; font-weight: bold;\">1<\/span>, cur[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]),(cur[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]<span style=\"color: #333333;\">-<\/span><span style=\"color: #0000dd; font-weight: bold;\">1<\/span>, cur[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]) ]\r\n    random<span style=\"color: #333333;\">.<\/span>shuffle(possibles)\r\n    \r\n    \r\n    <span style=\"color: #008800; font-weight: bold;\">for<\/span> item <span style=\"color: #000000; font-weight: bold;\">in<\/span> possibles:\r\n        <span style=\"color: #008800; font-weight: bold;\">if<\/span> item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>] <span style=\"color: #333333;\">&lt;<\/span> <span style=\"color: #0000dd; font-weight: bold;\">0<\/span> <span style=\"color: #000000; font-weight: bold;\">or<\/span> item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>] <span style=\"color: #333333;\">&lt;<\/span> <span style=\"color: #0000dd; font-weight: bold;\">0<\/span> <span style=\"color: #000000; font-weight: bold;\">or<\/span> item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>] <span style=\"color: #333333;\">&gt;<\/span> <span style=\"color: #007020;\">len<\/span>(maze) <span style=\"color: #000000; font-weight: bold;\">or<\/span> item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>] <span style=\"color: #333333;\">&gt;<\/span> <span style=\"color: #007020;\">len<\/span>(maze[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]):\r\n            <span style=\"color: #008800; font-weight: bold;\">continue<\/span>\r\n        <span style=\"color: #008800; font-weight: bold;\">elif<\/span> maze[item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]][item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]] <span style=\"color: #000000; font-weight: bold;\">in<\/span> [<span style=\"background-color: #fff0f0;\">\"1\"<\/span>,<span style=\"background-color: #fff0f0;\">\"2\"<\/span>] :\r\n            <span style=\"color: #008800; font-weight: bold;\">continue<\/span>\r\n        <span style=\"color: #008800; font-weight: bold;\">elif<\/span> item <span style=\"color: #000000; font-weight: bold;\">in<\/span> path:\r\n            <span style=\"color: #008800; font-weight: bold;\">continue<\/span>\r\n        <span style=\"color: #008800; font-weight: bold;\">elif<\/span> maze[item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]][item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]] <span style=\"color: #333333;\">==<\/span> <span style=\"background-color: #fff0f0;\">\"B\"<\/span>:\r\n            path <span style=\"color: #333333;\">=<\/span> path <span style=\"color: #333333;\">+<\/span> (item,)\r\n            display_maze(maze,path)\r\n            <span style=\"color: #007020;\">input<\/span>(<span style=\"background-color: #fff0f0;\">\"Solution found! Press enter to finish\"<\/span>)\r\n            os<span style=\"color: #333333;\">.<\/span>system(<span style=\"background-color: #fff0f0;\">'clear'<\/span>) <span style=\"color: #888888;\"># windows use 'cls'<\/span>\r\n            sys<span style=\"color: #333333;\">.<\/span>exit()\r\n        <span style=\"color: #008800; font-weight: bold;\">else<\/span>:\r\n            newpath <span style=\"color: #333333;\">=<\/span> path <span style=\"color: #333333;\">+<\/span> (item,)\r\n            move(newpath)\r\n            maze[item[<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>]][item[<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>]] <span style=\"color: #333333;\">=<\/span> <span style=\"background-color: #fff0f0;\">\"2\"<\/span>\r\n            display_maze(maze,path)\r\n            time<span style=\"color: #333333;\">.<\/span>sleep(<span style=\"color: #6600ee; font-weight: bold;\">0.3<\/span>)\r\n            \r\n\r\n    \r\n\r\nmaze <span style=\"color: #333333;\">=<\/span> get_maze(<span style=\"background-color: #fff0f0;\">'maze1.csv'<\/span>)\r\n\r\nmove(((<span style=\"color: #0000dd; font-weight: bold;\">1<\/span>,<span style=\"color: #0000dd; font-weight: bold;\">0<\/span>),))\r\n<\/pre>\n<\/div>\n\n<\/div><h2 class=\"tabtitle\">Resources<\/h2>\n<div class=\"tabcontent\">\n\n<p>Trip to a maze?<\/p>\n<p>&nbsp;<\/p>\n<\/div><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Blockly Maze See how far you can get through solving the mazes with the Blockly Maze Challenges https:\/\/blockly.games\/maze &nbsp; Vex VR Robot Maze Solving https:\/\/vr.vex.com\/ https:\/\/www.youtube.com\/watch?v=rop0W4QDOUIVideo can&#8217;t be loaded because JavaScript is disabled: Maze Solving &#8211; Computerphile (https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI) &nbsp; import csv,os,time,sys,random def get_maze(file): f = open(file,&#8217;r&#8217;) reader = csv.reader(f) maze = [] for line in&hellip;&nbsp;<a href=\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\" class=\"\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">Maze Solving Algorithms<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"off","neve_meta_content_width":70,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Maze Solving Algorithms - Algorithms<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Maze Solving Algorithms - Algorithms\" \/>\n<meta property=\"og:description\" content=\"Blockly Maze See how far you can get through solving the mazes with the Blockly Maze Challenges https:\/\/blockly.games\/maze &nbsp; Vex VR Robot Maze Solving https:\/\/vr.vex.com\/ https:\/\/www.youtube.com\/watch?v=rop0W4QDOUIVideo can&#8217;t be loaded because JavaScript is disabled: Maze Solving &#8211; Computerphile (https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI) &nbsp; import csv,os,time,sys,random def get_maze(file): f = open(file,&#039;r&#039;) reader = csv.reader(f) maze = [] for line in&hellip;&nbsp;Read More &raquo;Maze Solving Algorithms\" \/>\n<meta property=\"og:url\" content=\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\" \/>\n<meta property=\"og:site_name\" content=\"Algorithms\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-21T10:39:40+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\",\"url\":\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\",\"name\":\"Maze Solving Algorithms - Algorithms\",\"isPartOf\":{\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#website\"},\"datePublished\":\"2021-03-31T02:18:32+00:00\",\"dateModified\":\"2024-11-21T10:39:40+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"KS3 Algorithms Unit\",\"item\":\"https:\/\/learnlearn.uk\/algorithms\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Maze Solving Algorithms\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#website\",\"url\":\"https:\/\/learnlearn.uk\/algorithms\/\",\"name\":\"Algorithms\",\"description\":\"An intro\",\"publisher\":{\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/learnlearn.uk\/algorithms\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#organization\",\"name\":\"Algorithms\",\"url\":\"https:\/\/learnlearn.uk\/algorithms\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/learnlearn.uk\/algorithms\/wp-content\/uploads\/sites\/12\/2021\/04\/LearnLearnLogowhite.png\",\"contentUrl\":\"https:\/\/learnlearn.uk\/algorithms\/wp-content\/uploads\/sites\/12\/2021\/04\/LearnLearnLogowhite.png\",\"width\":710,\"height\":98,\"caption\":\"Algorithms\"},\"image\":{\"@id\":\"https:\/\/learnlearn.uk\/algorithms\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Maze Solving Algorithms - Algorithms","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/","og_locale":"en_GB","og_type":"article","og_title":"Maze Solving Algorithms - Algorithms","og_description":"Blockly Maze See how far you can get through solving the mazes with the Blockly Maze Challenges https:\/\/blockly.games\/maze &nbsp; Vex VR Robot Maze Solving https:\/\/vr.vex.com\/ https:\/\/www.youtube.com\/watch?v=rop0W4QDOUIVideo can&#8217;t be loaded because JavaScript is disabled: Maze Solving &#8211; Computerphile (https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI) &nbsp; import csv,os,time,sys,random def get_maze(file): f = open(file,'r') reader = csv.reader(f) maze = [] for line in&hellip;&nbsp;Read More &raquo;Maze Solving Algorithms","og_url":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/","og_site_name":"Algorithms","article_modified_time":"2024-11-21T10:39:40+00:00","twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/","url":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/","name":"Maze Solving Algorithms - Algorithms","isPartOf":{"@id":"https:\/\/learnlearn.uk\/algorithms\/#website"},"datePublished":"2021-03-31T02:18:32+00:00","dateModified":"2024-11-21T10:39:40+00:00","breadcrumb":{"@id":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/learnlearn.uk\/algorithms\/maze-solving-algorithms\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"KS3 Algorithms Unit","item":"https:\/\/learnlearn.uk\/algorithms\/"},{"@type":"ListItem","position":2,"name":"Maze Solving Algorithms"}]},{"@type":"WebSite","@id":"https:\/\/learnlearn.uk\/algorithms\/#website","url":"https:\/\/learnlearn.uk\/algorithms\/","name":"Algorithms","description":"An intro","publisher":{"@id":"https:\/\/learnlearn.uk\/algorithms\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/learnlearn.uk\/algorithms\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/learnlearn.uk\/algorithms\/#organization","name":"Algorithms","url":"https:\/\/learnlearn.uk\/algorithms\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/learnlearn.uk\/algorithms\/#\/schema\/logo\/image\/","url":"https:\/\/learnlearn.uk\/algorithms\/wp-content\/uploads\/sites\/12\/2021\/04\/LearnLearnLogowhite.png","contentUrl":"https:\/\/learnlearn.uk\/algorithms\/wp-content\/uploads\/sites\/12\/2021\/04\/LearnLearnLogowhite.png","width":710,"height":98,"caption":"Algorithms"},"image":{"@id":"https:\/\/learnlearn.uk\/algorithms\/#\/schema\/logo\/image\/"}}]}},"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"learnlearnadmin","author_link":"https:\/\/learnlearn.uk\/algorithms\/author\/learnlearnadmin\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":"Blockly Maze See how far you can get through solving the mazes with the Blockly Maze Challenges https:\/\/blockly.games\/maze &nbsp; Vex VR Robot Maze Solving https:\/\/vr.vex.com\/ https:\/\/www.youtube.com\/watch?v=rop0W4QDOUIVideo can&#8217;t be loaded because JavaScript is disabled: Maze Solving &#8211; Computerphile (https:\/\/www.youtube.com\/watch?v=rop0W4QDOUI) &nbsp; import csv,os,time,sys,random def get_maze(file): f = open(file,'r') reader = csv.reader(f) maze = [] for line in&hellip;&nbsp;Read&hellip;","_links":{"self":[{"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/pages\/92"}],"collection":[{"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/comments?post=92"}],"version-history":[{"count":9,"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/pages\/92\/revisions"}],"predecessor-version":[{"id":219,"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/pages\/92\/revisions\/219"}],"wp:attachment":[{"href":"https:\/\/learnlearn.uk\/algorithms\/wp-json\/wp\/v2\/media?parent=92"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}