{"format":"murdoku-puzzle/1","id":"dance","version":1,"difficulty":"easy","level":4,"size":{"rows":8,"cols":8},"languages":["en","hu","de","fr","es","it","nl","pl","pt","ro","ca","cs","fi","vi","tr","el","ru","uk","ar","ko","ja","zh-Hans","zh-Hant"],"defaultLanguage":"en","title":"舞蹈工作室","tagline":"一间舞蹈工作室 · 学期汇演之夜 · 老板错过了自己的谢幕","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-10-06","story":"舞蹈工作室已经为学期汇演准备了好几个星期，演出当晚整栋楼都嗡嗡作响：四名舞者在热身，老师在纠正最后几个舞步，钢琴师和前台忙着最后的准备。二十年前创办这间工作室的Véronique想在客人到来之前换上晚礼服，便消失在更衣室里。第一批观众按响门铃时，有人去叫她——却发现她死在储物柜旁。演出取消了，门被锁上，探长记下了四名舞者和三名员工各自所在的位置。","rules":{"standard":["每一<b>行</b>和每一<b>列</b>恰好有<b>一个人</b>。一旦放下某人，就划掉他所在的整行和整列。","<b>“旁边”</b> = 正左、正右、正上或正下，并且<b>在同一个区域内</b>。有物件的方格（柜台、灯、花坛、书桌、镜子、储物柜、钢琴、遮阳伞、大花盆、扩音器、盆栽）不能被占用；沙发和长椅可以。","方向指的是行和列，而不必在同一条直线上：<i>“他以北恰好一行处有一个女人”</i> = 紧邻上方那一行的人是女人，任意列。","凶手曾<b>与受害者独处</b>：那个区域里没有其他人。"],"special":[]},"roleNames":{"dancer":"舞者","staff":"员工","victim":"受害者"},"personGroups":[{"id":"dancers","name":"舞者","persons":["A","B","C","D"]},{"id":"staff","name":"员工","persons":["E","F","G"]},{"id":"owner","name":"老板","persons":["V"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Lobby","cells":[[1,1],[1,2],[1,3],[1,4],[2,1],[2,2],[2,3],[2,4]],"fill":"#ece7dd","pattern":"tiles","labelAt":[1,2],"name":"门厅"},{"id":"Office","cells":[[1,5],[1,6],[2,5],[2,6],[3,6]],"fill":"#e2d6c4","pattern":"planks","labelAt":[2,6],"name":"办公室"},{"id":"Studio","cells":[[3,3],[3,4],[3,5],[4,3],[4,4],[4,5],[4,6],[4,7],[5,3],[5,4],[5,5],[5,6],[5,7],[6,2],[6,3],[6,4],[6,5],[6,6],[6,7],[7,2],[7,3],[7,4],[7,5],[8,4],[8,5]],"fill":"#efe2cb","pattern":"boards","labelAt":[5,4],"name":"舞蹈室"},{"id":"Changing Room","cells":[[3,1],[3,2],[4,1],[4,2],[5,1],[5,2],[6,1],[7,1],[8,1],[8,2],[8,3]],"fill":"#dfe6ea","pattern":"tiles","labelAt":[5,1],"name":"更衣室"},{"id":"Terrace","cells":[[1,7],[1,8],[2,7],[2,8],[3,7],[3,8],[4,8],[5,8],[6,8],[7,6],[7,7],[7,8],[8,6],[8,7],[8,8]],"fill":"#e3e9d6","pattern":"marble","labelAt":[5,8],"name":"露台"}],"objectTypes":{"bench":{"occupiable":true,"name":"长椅","icon":"<rect x=\"2\" y=\"13\" width=\"42\" height=\"21\" rx=\"3.5\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"2\" y=\"13\" width=\"42\" height=\"7\" rx=\"3\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><line x1=\"16\" y1=\"20\" x2=\"16\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/><line x1=\"30\" y1=\"20\" x2=\"30\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/>"},"sofa":{"occupiable":true,"name":"沙发","icon":"<rect x=\"3\" y=\"14\" width=\"40\" height=\"20\" rx=\"6\" fill=\"#7a5a9a\" stroke=\"#4a3560\" stroke-width=\"1.5\"/><rect x=\"7\" y=\"9\" width=\"32\" height=\"10\" rx=\"4\" fill=\"#9a7abd\" stroke=\"#4a3560\" stroke-width=\"1.5\"/><line x1=\"8\" y1=\"34\" x2=\"8\" y2=\"39\" stroke=\"#4a3560\" stroke-width=\"2\"/><line x1=\"38\" y1=\"34\" x2=\"38\" y2=\"39\" stroke=\"#4a3560\" stroke-width=\"2\"/>"},"counter":{"occupiable":false,"name":"柜台","icon":"<rect x=\"0\" y=\"10\" width=\"46\" height=\"26\" fill=\"#a97c50\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"0\" y=\"10\" width=\"46\" height=\"7\" fill=\"#c9a06f\"/>"},"desk":{"occupiable":false,"name":"书桌","icon":"<rect x=\"5\" y=\"12\" width=\"36\" height=\"22\" rx=\"3\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"16\" width=\"14\" height=\"10\" fill=\"#f4efe6\" stroke=\"#8c8a82\"/><rect x=\"27\" y=\"17\" width=\"10\" height=\"4\" fill=\"#3d444b\"/>"},"flowers":{"occupiable":false,"name":"花坛","icon":"<rect x=\"2\" y=\"8\" width=\"42\" height=\"30\" rx=\"7\" fill=\"#b9a38a\" stroke=\"#6e5a44\" stroke-width=\"1.5\"/><path d=\"M8 11.5 h30 q4 0 4 4 v15 q0 4 -4 4 h-30 q-4 0 -4 -4 v-15 q0 -4 4 -4 z\" fill=\"#6b4a2e\"/><path d=\"M2.6 18 h3 M2.6 28 h3 M40.4 18 h3 M40.4 28 h3 M15 8.6 v2.6 M31 8.6 v2.6 M15 34.8 v2.6 M31 34.8 v2.6\" stroke=\"#6e5a44\" stroke-width=\"1\"/><ellipse cx=\"8.3\" cy=\"19.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 8.3 19.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"12.7\" cy=\"19.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 12.7 19.2)\" fill=\"#4f9e58\"/><ellipse cx=\"16.8\" cy=\"18.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 16.8 18.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"21.2\" cy=\"18.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 21.2 18.2)\" fill=\"#4f9e58\"/><ellipse cx=\"25.3\" cy=\"19.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 25.3 19.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"29.7\" cy=\"19.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 29.7 19.2)\" fill=\"#4f9e58\"/><ellipse cx=\"33.8\" cy=\"18.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 33.8 18.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"38.2\" cy=\"18.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 38.2 18.2)\" fill=\"#4f9e58\"/><ellipse cx=\"12.3\" cy=\"26.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 12.3 26.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"16.7\" cy=\"26.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 16.7 26.2)\" fill=\"#4f9e58\"/><ellipse cx=\"20.8\" cy=\"25.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 20.8 25.7)\" fill=\"#3f8a4a\"/><ellipse cx=\"25.2\" cy=\"25.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 25.2 25.7)\" fill=\"#4f9e58\"/><ellipse cx=\"29.3\" cy=\"26.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 29.3 26.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"33.7\" cy=\"26.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 33.7 26.2)\" fill=\"#4f9e58\"/><ellipse cx=\"8.3\" cy=\"32.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 8.3 32.7)\" fill=\"#3f8a4a\"/><ellipse cx=\"12.7\" cy=\"32.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 12.7 32.7)\" fill=\"#4f9e58\"/><ellipse cx=\"16.8\" cy=\"33.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 16.8 33.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"21.2\" cy=\"33.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 21.2 33.2)\" fill=\"#4f9e58\"/><ellipse cx=\"25.3\" cy=\"32.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 25.3 32.7)\" fill=\"#3f8a4a\"/><ellipse cx=\"29.7\" cy=\"32.7\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 29.7 32.7)\" fill=\"#4f9e58\"/><ellipse cx=\"33.8\" cy=\"33.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(-30 33.8 33.2)\" fill=\"#3f8a4a\"/><ellipse cx=\"38.2\" cy=\"33.2\" rx=\"2.4\" ry=\"1.2\" transform=\"rotate(30 38.2 33.2)\" fill=\"#4f9e58\"/><g fill=\"#e0526a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"12.40\" cy=\"17.00\" r=\"1.7\"/><circle cx=\"11.09\" cy=\"18.81\" r=\"1.7\"/><circle cx=\"8.96\" cy=\"18.12\" r=\"1.7\"/><circle cx=\"8.96\" cy=\"15.88\" r=\"1.7\"/><circle cx=\"11.09\" cy=\"15.19\" r=\"1.7\"/></g><circle cx=\"10.5\" cy=\"17\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#f2d24a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"20.90\" cy=\"16.00\" r=\"1.7\"/><circle cx=\"19.59\" cy=\"17.81\" r=\"1.7\"/><circle cx=\"17.46\" cy=\"17.12\" r=\"1.7\"/><circle cx=\"17.46\" cy=\"14.88\" r=\"1.7\"/><circle cx=\"19.59\" cy=\"14.19\" r=\"1.7\"/></g><circle cx=\"19\" cy=\"16\" r=\"1.1\" fill=\"#f2a53a\"/><g fill=\"#b05fc4\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"29.40\" cy=\"17.00\" r=\"1.7\"/><circle cx=\"28.09\" cy=\"18.81\" r=\"1.7\"/><circle cx=\"25.96\" cy=\"18.12\" r=\"1.7\"/><circle cx=\"25.96\" cy=\"15.88\" r=\"1.7\"/><circle cx=\"28.09\" cy=\"15.19\" r=\"1.7\"/></g><circle cx=\"27.5\" cy=\"17\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#f28c3a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"37.90\" cy=\"16.00\" r=\"1.7\"/><circle cx=\"36.59\" cy=\"17.81\" r=\"1.7\"/><circle cx=\"34.46\" cy=\"17.12\" r=\"1.7\"/><circle cx=\"34.46\" cy=\"14.88\" r=\"1.7\"/><circle cx=\"36.59\" cy=\"14.19\" r=\"1.7\"/></g><circle cx=\"36\" cy=\"16\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#fbfaf6\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"16.40\" cy=\"24.00\" r=\"1.7\"/><circle cx=\"15.09\" cy=\"25.81\" r=\"1.7\"/><circle cx=\"12.96\" cy=\"25.12\" r=\"1.7\"/><circle cx=\"12.96\" cy=\"22.88\" r=\"1.7\"/><circle cx=\"15.09\" cy=\"22.19\" r=\"1.7\"/></g><circle cx=\"14.5\" cy=\"24\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#d94a8a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"24.90\" cy=\"23.50\" r=\"1.7\"/><circle cx=\"23.59\" cy=\"25.31\" r=\"1.7\"/><circle cx=\"21.46\" cy=\"24.62\" r=\"1.7\"/><circle cx=\"21.46\" cy=\"22.38\" r=\"1.7\"/><circle cx=\"23.59\" cy=\"21.69\" r=\"1.7\"/></g><circle cx=\"23\" cy=\"23.5\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#e0526a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"33.40\" cy=\"24.00\" r=\"1.7\"/><circle cx=\"32.09\" cy=\"25.81\" r=\"1.7\"/><circle cx=\"29.96\" cy=\"25.12\" r=\"1.7\"/><circle cx=\"29.96\" cy=\"22.88\" r=\"1.7\"/><circle cx=\"32.09\" cy=\"22.19\" r=\"1.7\"/></g><circle cx=\"31.5\" cy=\"24\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#f2d24a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"12.40\" cy=\"30.50\" r=\"1.7\"/><circle cx=\"11.09\" cy=\"32.31\" r=\"1.7\"/><circle cx=\"8.96\" cy=\"31.62\" r=\"1.7\"/><circle cx=\"8.96\" cy=\"29.38\" r=\"1.7\"/><circle cx=\"11.09\" cy=\"28.69\" r=\"1.7\"/></g><circle cx=\"10.5\" cy=\"30.5\" r=\"1.1\" fill=\"#f2a53a\"/><g fill=\"#b05fc4\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"20.90\" cy=\"31.00\" r=\"1.7\"/><circle cx=\"19.59\" cy=\"32.81\" r=\"1.7\"/><circle cx=\"17.46\" cy=\"32.12\" r=\"1.7\"/><circle cx=\"17.46\" cy=\"29.88\" r=\"1.7\"/><circle cx=\"19.59\" cy=\"29.19\" r=\"1.7\"/></g><circle cx=\"19\" cy=\"31\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#f28c3a\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"29.40\" cy=\"30.50\" r=\"1.7\"/><circle cx=\"28.09\" cy=\"32.31\" r=\"1.7\"/><circle cx=\"25.96\" cy=\"31.62\" r=\"1.7\"/><circle cx=\"25.96\" cy=\"29.38\" r=\"1.7\"/><circle cx=\"28.09\" cy=\"28.69\" r=\"1.7\"/></g><circle cx=\"27.5\" cy=\"30.5\" r=\"1.1\" fill=\"#f7e07a\"/><g fill=\"#fbfaf6\" stroke=\"rgba(0,0,0,.25)\" stroke-width=\".4\"><circle cx=\"37.90\" cy=\"31.00\" r=\"1.7\"/><circle cx=\"36.59\" cy=\"32.81\" r=\"1.7\"/><circle cx=\"34.46\" cy=\"32.12\" r=\"1.7\"/><circle cx=\"34.46\" cy=\"29.88\" r=\"1.7\"/><circle cx=\"36.59\" cy=\"29.19\" r=\"1.7\"/></g><circle cx=\"36\" cy=\"31\" r=\"1.1\" fill=\"#f7e07a\"/>"},"lamp":{"occupiable":false,"name":"灯","icon":"<circle cx=\"23\" cy=\"12\" r=\"9\" fill=\"#f7e9a8\" opacity=\".5\"/><rect x=\"21\" y=\"16\" width=\"4\" height=\"24\" fill=\"#2f3b4a\"/><rect x=\"14\" y=\"39\" width=\"18\" height=\"4\" rx=\"1.5\" fill=\"#2f3b4a\"/><circle cx=\"23\" cy=\"12\" r=\"5\" fill=\"#f2c94c\" stroke=\"#2f3b4a\" stroke-width=\"1.4\"/>"},"locker":{"occupiable":false,"name":"储物柜","icon":"<rect x=\"8\" y=\"4\" width=\"30\" height=\"38\" rx=\"2\" fill=\"#7f95a8\" stroke=\"#3d4f5e\" stroke-width=\"1.5\"/><line x1=\"23\" y1=\"4\" x2=\"23\" y2=\"42\" stroke=\"#3d4f5e\"/><rect x=\"11\" y=\"10\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"26\" y=\"10\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"11\" y=\"16\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"26\" y=\"16\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><circle cx=\"19\" cy=\"28\" r=\"1.5\" fill=\"#1f2a33\"/><circle cx=\"34\" cy=\"28\" r=\"1.5\" fill=\"#1f2a33\"/>"},"mirror":{"occupiable":false,"name":"镜子","icon":"<rect x=\"12\" y=\"4\" width=\"22\" height=\"38\" rx=\"9\" fill=\"#c9a03a\" stroke=\"#7a5a12\" stroke-width=\"1.5\"/><rect x=\"15\" y=\"7\" width=\"16\" height=\"32\" rx=\"7\" fill=\"#dfe9ee\"/><path d=\"M19 11 q-3 8 0 20\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"2.5\" opacity=\".8\"/>"},"piano":{"occupiable":false,"name":"钢琴","icon":"<path d=\"M8 8 h22 q10 0 12 12 v18 h-34 z\" fill=\"#1c1c1c\" stroke=\"#0b0b0b\" stroke-width=\"1.5\"/><rect x=\"10\" y=\"32\" width=\"18\" height=\"5\" fill=\"#f4efe6\"/><g fill=\"#1c1c1c\"><rect x=\"12\" y=\"32\" width=\"2\" height=\"3\"/><rect x=\"16\" y=\"32\" width=\"2\" height=\"3\"/><rect x=\"22\" y=\"32\" width=\"2\" height=\"3\"/></g>"},"plant":{"occupiable":false,"name":"盆栽","icon":"<path d=\"M15 28 h16 l-2 12 h-12 z\" fill=\"#c2643a\" stroke=\"#7a3d20\" stroke-width=\"1.2\"/><ellipse cx=\"15\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(-30 15 17)\"/><ellipse cx=\"31\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(30 31 17)\"/><ellipse cx=\"23\" cy=\"13\" rx=\"6\" ry=\"11\" fill=\"#57a35e\"/>"},"planter":{"occupiable":false,"name":"大花盆","icon":"<path d=\"M6 25 q3 -9 11 -7 q5 -6 11 -1 q9 -1 11 8 z\" fill=\"#3f8a4a\" stroke=\"#2c6434\" stroke-width=\"1\"/><circle cx=\"14\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><circle cx=\"24\" cy=\"15\" r=\"1.9\" fill=\"#f2d24a\"/><circle cx=\"33\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"14\" rx=\"2\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.5\"/><path d=\"M4 30 h38 M4 34.5 h38\" stroke=\"#7a5630\" stroke-width=\"1\"/><rect x=\"4\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"38\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"8\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/><rect x=\"34\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/>"},"speaker":{"occupiable":false,"name":"扩音器","icon":"<rect x=\"11\" y=\"3\" width=\"24\" height=\"40\" rx=\"3\" fill=\"#2f3338\" stroke=\"#111\" stroke-width=\"1.4\"/><circle cx=\"23\" cy=\"13\" r=\"5\" fill=\"#555\" stroke=\"#111\" stroke-width=\"1\"/><circle cx=\"23\" cy=\"13\" r=\"1.8\" fill=\"#111\"/><circle cx=\"23\" cy=\"30\" r=\"8.5\" fill=\"#555\" stroke=\"#111\" stroke-width=\"1\"/><circle cx=\"23\" cy=\"30\" r=\"5\" fill=\"#3b3f44\"/><circle cx=\"23\" cy=\"30\" r=\"2\" fill=\"#111\"/><path d=\"M38 17 q3 5 0 10 M41 14 q5 8 0 16 M8 17 q-3 5 0 10 M5 14 q-5 8 0 16\" fill=\"none\" stroke=\"#e0b050\" stroke-width=\"1.4\" stroke-linecap=\"round\"/>"},"umbrella":{"occupiable":false,"name":"遮阳伞","icon":"<path d=\"M5 24 q18 -22 36 0 z\" fill=\"#e26d5a\" stroke=\"#8a3a2a\" stroke-width=\"1.2\"/><path d=\"M5 24 q4 -6 9 0 q4 -6 9 0 q4 -6 9 0 q4 -6 9 0\" fill=\"none\" stroke=\"#f9d7cf\" stroke-width=\"1.5\"/><line x1=\"23\" y1=\"24\" x2=\"23\" y2=\"42\" stroke=\"#5a4a3a\" stroke-width=\"2\"/>"}},"wallTypes":{},"objects":[{"cell":[1,3],"type":"counter"},{"cell":[1,6],"type":"lamp"},{"cell":[1,8],"type":"flowers"},{"cell":[2,1],"type":"sofa"},{"cell":[2,5],"type":"desk"},{"cell":[3,3],"type":"mirror"},{"cell":[3,7],"type":"bench"},{"cell":[4,1],"type":"locker"},{"cell":[5,2],"type":"bench"},{"cell":[5,3],"type":"mirror"},{"cell":[6,1],"type":"locker"},{"cell":[6,2],"type":"piano"},{"cell":[6,8],"type":"umbrella"},{"cell":[7,8],"type":"planter"},{"cell":[8,5],"type":"speaker"},{"cell":[8,7],"type":"plant"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Amélie","gender":"F","role":"dancer","color":"#c62828","avatar":{"bg":"#ad1457","skin":"#f6d8c0","hair":"#7a4a2a","style":"bun","shirt":"#f3c4d6","necklace":true},"clue":"<b>扩音器</b>在她的<b>列</b>里。她所在区域里<b>没有男人</b>。","job":"芭蕾舞者","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Amélie\"><rect width=\"80\" height=\"80\" fill=\"#ad1457\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f3c4d6\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#7a4a2a\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#7a4a2a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"dancer","constraints":[{"type":"col_has","obj":"speaker"},{"type":"no_gender_in_area","gender":"M"}]},{"id":"B","name":"Benoît","gender":"M","role":"dancer","color":"#2e7d32","avatar":{"bg":"#1b2a33","skin":"#e4b998","hair":"#1c1a1a","style":"slick","shirt":"#1b1b1b","mustache":true,"mustacheColor":"#1c1a1a"},"clue":"他坐在<b>长椅</b>上。他在<b>露台</b>。","job":"探戈舞者","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Benoît\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#1c1a1a\"/></svg>","solverRole":"dancer","constraints":[{"type":"on","obj":"bench"},{"type":"area","areas":["Terrace"]}]},{"id":"C","name":"Clémence","gender":"F","role":"dancer","color":"#1565c0","avatar":{"bg":"#6e2c4b","skin":"#f3d3b5","hair":"#1c1a1a","style":"ponytail","shirt":"#5b2c6f","headband":"#e0b050"},"clue":"她所在区域里<b>没有男人</b>。","job":"现代舞者","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Clémence\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#1c1a1a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#5b2c6f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><path d=\"M26 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><rect x=\"26\" y=\"23\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#e0b050\"/></svg>","solverRole":"dancer","constraints":[{"type":"no_gender_in_area","gender":"M"}]},{"id":"D","name":"Didier","gender":"M","role":"dancer","color":"#6a1b9a","avatar":{"bg":"#35607a","skin":"#f1c8a5","hair":"#b7482c","style":"short","shirt":"#2f3b4c","beard":true,"bow":true},"clue":"他在<b>门厅</b>。","job":"踢踏舞者","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Didier\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f3b4c\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1c8a5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1c8a5\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#b7482c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#b7482c\"/></svg>","solverRole":"dancer","constraints":[{"type":"area","areas":["Lobby"]}]},{"id":"E","name":"Éléonore","gender":"F","role":"staff","color":"#e65100","avatar":{"bg":"#3d2a5a","skin":"#f0cdb0","hair":"#8a8278","style":"bob","shirt":"#4a5a7a","glasses":true,"scarf":"#c62828"},"clue":"<b>长椅</b>在她的<b>行</b>里。她<b>以北恰好一行</b>处是<b>老板</b>。","job":"舞蹈老师","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Éléonore\"><rect width=\"80\" height=\"80\" fill=\"#3d2a5a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#8a8278\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#4a5a7a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#8a8278\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#c62828\"/></svg>","solverRole":"staff","constraints":[{"type":"row_has","obj":"bench"},{"type":"rel_any","dir":"N","exact":1,"role":"owner"}]},{"id":"F","name":"Fabien","gender":"M","role":"staff","color":"#00838f","avatar":{"bg":"#5d4037","skin":"#e7b98f","hair":"#3a2a1c","style":"short","shirt":"#f4efe6","glasses":true,"beard":true,"bow":true},"clue":"他是在一面<b>镜子</b>旁边的<b>唯一一人</b>。他所在区域里还有<b>另一名员工</b>。","job":"工作室钢琴师","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Fabien\"><rect width=\"80\" height=\"80\" fill=\"#5d4037\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3a2a1c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"staff","constraints":[{"type":"only_beside","obj":"mirror"},{"type":"with_role","role":"staff"}]},{"id":"G","name":"Gaëlle","gender":"F","role":"staff","color":"#ad1457","avatar":{"bg":"#00695c","skin":"#f6d8c0","hair":"#d9b464","style":"long","shirt":"#2e7d32","earrings":true},"clue":"她所在区域里<b>不止她一人</b>。","job":"前台","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Gaëlle\"><rect width=\"80\" height=\"80\" fill=\"#00695c\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#d9b464\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2e7d32\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#d9b464\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"staff","constraints":[{"type":"not_alone"}]},{"id":"V","name":"Véronique","gender":"F","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#f3d3b5","hair":"#d9d4cc","style":"bun","shirt":"#8b1a1a","necklace":true,"earrings":true},"clue":"<b>受害者。</b>她被发现在<b>更衣室</b>，一个<b>储物柜</b>旁边——与凶手独处。","job":"工作室老板","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Véronique\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8b1a1a\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#d9d4cc\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#d9d4cc\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"owner","constraints":[{"type":"area","areas":["Changing Room"]},{"type":"beside","obj":"locker"}]}],"victim":"V","murderer":"C","solution":{"A":[1,5],"D":[2,4],"B":[3,7],"V":[4,2],"E":[5,6],"F":[6,3],"C":[7,1],"G":[8,8]},"walkthrough":[{"place":["B","A"],"cand":{"C":[[4,2],[4,4],[4,6],[4,8],[6,4],[6,6],[7,1],[7,2],[7,4],[7,6],[8,1],[8,2],[8,4],[8,6],[8,8]],"D":[[2,1],[2,2],[2,4]],"E":[[5,1],[5,2],[5,6],[5,8]],"F":[[4,3],[6,3]],"G":[[4,2],[4,4],[4,6],[4,8],[6,4],[6,6],[7,1],[7,2],[7,4],[7,6],[8,1],[8,2],[8,4],[8,6],[8,8]],"V":[[4,2],[7,1]]},"text":"Véronique被发现在更衣室的一个储物柜旁边：储物柜在R4C1和R6C1，所以她在R3C1、R4C2、R5C1或R7C1——而凶手当时在那里与她独处，所以更衣室里恰好有两个人。Benoît坐在露台的长椅上，而露台只有一张长椅，就是R3C7的那张：<b>Benoît在R3C7</b>。Fabien在一面镜子旁边——镜子在R3C3和R5C3，所以他在R4C3、R5C4或R6C3（R3C4在Benoît所在的行），在舞蹈室。Amélie的列里有扩音器（R8C5），所以她在第 5列；但她所在区域里没有男人，而Fabien在舞蹈室，所以她不在那里——第 5列中只有R1C5在舞蹈室之外：<b>Amélie在R1C5</b>，在办公室。Éléonore的行里有一张长椅：长椅在第 3行和第 5行，而第 3行属于Benoît，所以她在第 5行。这排除了Fabien的R5C4——他在R4C3或R6C3，所以第 3列是他的——也排除了Véronique的R5C1：她在R4C2或R7C1。Didier在门厅；第 1行属于Amélie，第 3列属于Fabien，所以他在R2C1、R2C2或R2C4，在第 2行。"},{"place":["V","F"],"cand":{"C":[[7,1],[8,1]],"D":[[2,1],[2,4]],"E":[[5,6],[5,8]],"G":[[7,4],[7,6],[8,4],[8,6],[8,8]]},"text":"Éléonore以北恰好一行处是老板——而工作室的老板正是Véronique本人：Amélie、Benoît、Clémence和Didier是舞者，Éléonore、Fabien和Gaëlle是员工。Éléonore在第 5行，所以Véronique在紧邻上方的那一行，第 4行；她的两个方格中只有R4C2在那里（R7C1在第 7行）：<b>Véronique在R4C2</b>，在R4C1的储物柜旁边。第 4行是她的，所以Fabien的R4C3被排除：<b>Fabien在R6C3</b>，在R5C3的镜子旁边。Clémence在哪里？她所在区域里没有男人，所以她不在舞蹈室（Fabien）、不在露台（Benoît），也不在门厅（Didier）；办公室也被排除：R1C5属于Amélie，R3C6在Benoît所在的行，R2C6在Didier所在的行。她在更衣室——而那里只有Véronique和凶手：<b>Clémence是凶手</b>，更衣室里没有其他人。"},{"place":["D","E"],"cand":{"C":[[7,1],[8,1]],"G":[[8,8]]},"text":"Clémence在更衣室里的方格：R3C1和R3C2在Benoît所在的行，R5C1和R5C2在Éléonore所在的行，R8C2在Véronique所在的列，R8C3在Fabien所在的列——她在R7C1或R8C1，所以第 1列是她的。第 2行的Didier失去了R2C1（被她占去）和R2C2（被Véronique占去）：<b>Didier在R2C4</b>。Fabien说他所在的区域舞蹈室里还有另一名员工——会是谁，Éléonore还是Gaëlle？不是Gaëlle：第 1–4行和第 6行，以及第 2–5列和第 7列都已被占，所以舞蹈室里仅剩的空方格是R5C6——在Éléonore所在的行。所以与Fabien在一起的员工是Éléonore：<b>Éléonore在R5C6</b>。"},{"place":["G","C"],"text":"Gaëlle所在区域里不止她一人。第 1–6行和第 2–7列都已被占，所以她在R7C1、R8C1或R8C8（R7C8是大花盆）；R7C1和R8C1在更衣室，而那里只有Véronique和Clémence——<b>Gaëlle在R8C8</b>，在露台上与Benoît在一起，确实不止她一人。第 8行是她的，所以 <b>Clémence在R7C1</b>，在R6C1的储物柜旁边——在更衣室与Véronique独处。所有人都已放好。"},{"final":true,"text":"案件告破：Véronique在更衣室里与现代舞者独处。<b>Clémence是凶手！</b>"}],"solver":{"rules":[],"occupiable":["bench","sofa"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-10-06"},"score":9.1329}