{"id":2691,"date":"2021-03-07T11:52:43","date_gmt":"2021-03-07T10:52:43","guid":{"rendered":"https:\/\/godefroyinformatique.fr\/?page_id=2691"},"modified":"2022-01-19T18:32:53","modified_gmt":"2022-01-19T17:32:53","slug":"godefroy-informatique-sudoku","status":"publish","type":"page","link":"https:\/\/godefroyinformatique.fr\/index.php\/godefroy-informatique-sudoku\/","title":{"rendered":"Godefroy Informatique &#8211; Sudoku"},"content":{"rendered":"\n<!-- <head> -->\n<style>\n.sudoku-board {\n min-height: 22.75rem;\n margin-top: 3px;\n margin-bottom: 1em;\n}\n\n.sudoku-board-cell {\n display: inline-block;\n position: relative;\n border: 1px solid #ddd;\n background: white;\n max-width: 11.11111%;\n}\n\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(9n+1) {\n border-left-width: 2px;\n border-left-color: #808080;\n}\n\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(n):nth-of-type(-n+9) {\n border-top-width: 2px;\n border-top-color: #808080;\n}\n\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(3n) {\n border-right-width: 2px;\n border-right-color: #808080;\n}\n\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(n+19):nth-of-type(-n+27),\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(n+46):nth-of-type(-n+54),\n[data-board-size=\"9\"].sudoku-board .sudoku-board-cell:nth-of-type(n+73):nth-of-type(-n+81) {\n border-bottom-width: 2px;\n border-bottom-color: #808080;\n}\n\n.sudoku-board-cell input {\n background: none;\n font-size: 19.2px;\n font-size: 1.2rem;\n text-align: center;\n width: 2em;\n max-width: 100%;\n height: 2em;\n border: 0;\n position: relative;\n z-index: 1; \/*on top of candidates*\/\n}\n\n.sudoku-board-cell .highlight-val {\n color: #00d;\n}\n\n.sudoku-board-cell .board-cell--error {\n background: #d00;\n color: #eee;\n}\n\n.sudoku-board-cell .candidates {\n display: none; \/*hidden by default*\/\n position: absolute;\n top: 0; bottom: 0; left: 0; right: 0;\n text-align: center;\n font-size: .75em;\n letter-spacing: -.5px;\n font-family: monospace, sans-serif;\n line-height: 0;\n text-align: justify;\n}\n\n.sudoku-board .candidates:after {\n content: \"\";\n display: inline-block;\n width: 100%;\n}\n\n@media(max-width: 23em){\n .sudoku-board .candidates {\n  letter-spacing: -2px;\n }\n}\n .showCandidates .candidates {\n  display: block;\n }\n\n.sudoku-board .candidates div {\n display: inline-block;\n width: 20%;\n line-height: 1.13;\n vertical-align: top;\n *display: inline;\n *zoom: 1;\n}\n\n.candidate--highlight {\n background-color: yellow;\n}\n.candidate--to-remove {\n background-color: red;\n color: white;\n}\n\n.sudokubutton1,.sudokubutton2,.sudokubutton3,.sudokubutton4,\n.sudokubutton5,.sudokubutton6,.sudokubutton7 {\ncolor: white;\n-webkit-transition-duration: 0.3s;\ntransition-duration: 0.3s;\npadding: 1px 6px;\n}\n.sudokubutton1 {\nbackground-color: #3cbf71;\n}\n.sudokubutton2 {\nbackground-color: #ff9224;\n}\n.sudokubutton3 {\nbackground-color: #ff3c3c;\n}\n.sudokubutton4 {\nbackground-color: #020202;\n}\n.sudokubutton5,.sudokubutton6 {\nbackground-color: #4040ff;\n}\n.sudokubutton7 {\nbackground-color: #899db6;\n}\n.sudokubutton1:hover,.sudokubutton2:hover,.sudokubutton3:hover,.sudokubutton4:hover,\n.sudokubutton5:hover,.sudokubutton6:hover,.sudokubutton7:hover {\nbackground-color: #EDEDED;\ncolor: black;\ncursor: pointer;\n}\n\n* {\n margin:0; padding:0;\n -moz-box-sizing: border-box;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n.wrap {\n padding: 2em 1em;\n width: 400px;\n max-width: 100%;\n margin-left: auto;\n margin-right: auto;\n}\n\n@media(min-width: 30em) {\n .wrap {\n  width: 490px;\n }\n .sudoku-board input {\n  font-size: 24px;\n  font-size: 1.5rem;\n }\n .sudoku-board .candidates {\n  font-size: .8em;\n }\n}\n<\/style>\n\n<script src=\"https:\/\/code.jquery.com\/jquery-2.1.0.min.js\"><\/script>\n<script src=\"https:\/\/mczak.com\/code\/sudoku\/js\/sudoku2.js\"><\/script>\n<!-- <\/head> -->\n\n<!-- <body> -->\n<div class=\"wrap\">\n\t\t\n<!--show candidates toggle-->\n<label for=\"toggleCandidates\">Show candidates&nbsp;<\/label>\n<input id=\"toggleCandidates\" class=\"js-candidate-toggle\" type=\"checkbox\">\n<!--generate board buttons-->\nNew:\n<button type=\"button\" class=\"sudokubutton1 js-generate-board-btn--easy\">Easy<\/button>\n<button type=\"button\" class=\"sudokubutton2 js-generate-board-btn--medium\">Medium<\/button>\n<button type=\"button\" class=\"sudokubutton3 js-generate-board-btn--hard\">Hard<\/button>\n<button type=\"button\" class=\"sudokubutton4 js-generate-board-btn--very-hard\">Very Hard<\/button>\n\n<!--the only required html-->\n<div id=\"sudoku\" class=\"sudoku-board\">\n<\/div>\n\n<!--solve buttons-->\nSolve: <button type=\"button\" class=\"sudokubutton5 js-solve-step-btn\">One Step<\/button>\n<button type=\"button\" class=\"sudokubutton6 js-solve-all-btn\">All<\/button>\n<br>\n<!--clear board btn-->\nClear: <button type=\"button\" class=\"sudokubutton7 js-clear-board-btn\">Board<\/button>\n<\/div>\n\n<script>\n var $candidateToggle = $(\".js-candidate-toggle\"),\n $generateBoardBtnEasy = $(\".js-generate-board-btn--easy\"),\n $generateBoardBtnMedium = $(\".js-generate-board-btn--medium\"),\n $generateBoardBtnHard = $(\".js-generate-board-btn--hard\"),\n $generateBoardBtnVeryHard = $(\".js-generate-board-btn--very-hard\"),\n \n $solveStepBtn = $(\".js-solve-step-btn\"),\n $solveAllBtn = $(\".js-solve-all-btn\"),\n $clearBoardBtn = $(\".js-clear-board-btn\"),\n \n mySudokuJS = $(\"#sudoku\").sudokuJS({\n  difficulty: \"very hard\"\n  \/\/change state of our candidate showing checkbox on change in sudokuJS\n  ,candidateShowToggleFn : function(showing){\n   $candidateToggle.prop(\"checked\", showing);\n  }\n });\n\n $solveStepBtn.on(\"click\", mySudokuJS.solveStep);\n $solveAllBtn.on(\"click\", mySudokuJS.solveAll);\n $clearBoardBtn.on(\"click\", mySudokuJS.clearBoard);\n\n $generateBoardBtnEasy.on(\"click\", function(){\n  mySudokuJS.generateBoard(\"easy\");\n });\n $generateBoardBtnMedium.on(\"click\", function(){\n  mySudokuJS.generateBoard(\"medium\");\n });\n $generateBoardBtnHard.on(\"click\", function(){\n  mySudokuJS.generateBoard(\"hard\");\n });\n $generateBoardBtnVeryHard.on(\"click\", function(){\n  mySudokuJS.generateBoard(\"very hard\");\n });\n\n $candidateToggle.on(\"change\", function(){\n  if($candidateToggle.is(\":checked\"))\n   mySudokuJS.showCandidates();\n  else\n   mySudokuJS.hideCandidates();\n });\n $candidateToggle.trigger(\"change\");\n<\/script>\n<!-- <\/body> -->\n","protected":false},"excerpt":{"rendered":"<p>Show candidates&nbsp; New: Easy Medium Hard Very Hard Solve: One Step All Clear: Board<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2691","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/pages\/2691","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/comments?post=2691"}],"version-history":[{"count":0,"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/pages\/2691\/revisions"}],"wp:attachment":[{"href":"https:\/\/godefroyinformatique.fr\/index.php\/wp-json\/wp\/v2\/media?parent=2691"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}