{"format":"murdoku-puzzle/1","id":"laundry","version":1,"difficulty":"medium","level":5,"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":"星期一是Ventura蒸汽洗衣房的洗衣日，老房子从天亮起就充满了蒸汽和嘈杂声：洗衣盆咕嘟咕嘟地沸腾，轧水机吱呀作响，院子里晾着的床单白茫茫一片。四名工人维持着店里的运转，三位顾客带着各自的包袱来了——一位酒店管家、一名服务员，还有一位带着婚纱的新娘。店主Ventura最后一次被人看见，是他走进熨烫室去查看炉子上加热的熨斗。轧水机安静下来后，Amparo去看是怎么回事——结果发现他死在轧水机旁边。没有人离开过这栋楼，所以警察问了全部七个人当时在哪里。","rules":{"standard":["每一<b>行</b>和每一<b>列</b>恰好有<b>一个人</b>。一旦放下某人，就划掉他所在的整行和整列。","<b>“旁边”</b> = 正左、正右、正上或正下，并且<b>在同一个区域内</b>。有物件的方格（柜台、架子、树、书桌、打地毯架、手推车、洗衣篮、洗衣盆、漂洗槽、桌子、轧水机、火炉）不能被占用；长椅和凳子可以。","方向指的是行和列，而不必在同一条直线上：<i>“他以北恰好一行处有一个女人”</i> = 紧邻上方那一行的人是女人，任意列。","凶手曾<b>与受害者独处</b>：那个区域里没有其他人。"],"special":[]},"roleNames":{"worker":"洗衣房工人","customer":"顾客","victim":"受害者"},"personGroups":[{"id":"workers","name":"洗衣房工人","persons":["A","B","C","D"]},{"id":"customers","name":"顾客","persons":["E","F","G"]},{"id":"owner","name":"店主","persons":["V"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Entrance","cells":[[1,1],[1,2],[2,1],[2,2],[3,1]],"fill":"#ece7dd","pattern":"tiles","labelAt":[2,1],"name":"入口"},{"id":"Office","cells":[[1,3],[1,4],[2,3],[2,4]],"fill":"#e2d6c4","pattern":"planks","labelAt":[1,3],"name":"办公室"},{"id":"Washing Hall","cells":[[3,2],[3,3],[3,4],[3,5],[4,1],[4,2],[4,3],[4,4],[4,5],[4,6],[5,1],[5,2],[5,3],[5,4],[5,5],[5,6],[6,4],[6,5],[7,5],[7,6]],"fill":"#dfe6ea","pattern":"tiles","labelAt":[4,4],"name":"洗涤间"},{"id":"Ironing Room","cells":[[6,1],[6,2],[6,3],[7,1],[7,2],[7,3],[7,4],[8,1],[8,2],[8,3],[8,4],[8,5]],"fill":"#efe2cb","pattern":"boards","labelAt":[7,3],"name":"熨烫室"},{"id":"Drying Yard","cells":[[1,5],[1,6],[1,7],[1,8],[2,5],[2,6],[2,7],[2,8],[3,6],[3,7],[3,8],[4,7],[4,8],[5,7],[5,8],[6,6],[6,7],[6,8],[7,7],[7,8],[8,6],[8,7],[8,8]],"fill":"#dce8d0","pattern":"marble","labelAt":[5,7],"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\"/>"},"stool":{"occupiable":true,"name":"凳子","icon":"<circle cx=\"23\" cy=\"23\" r=\"11\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><circle cx=\"23\" cy=\"23\" r=\"5\" fill=\"#d9d5cc\"/>"},"basket":{"occupiable":false,"name":"洗衣篮","icon":"<path d=\"M12 18 V6 M34 18 V6 M12 6 H34\" stroke=\"#6b4a2a\" stroke-width=\"2\" fill=\"none\" stroke-linecap=\"round\"/><rect x=\"8\" y=\"18\" width=\"30\" height=\"22\" rx=\"3\" fill=\"#c79a55\" stroke=\"#7a5626\" stroke-width=\"1.5\"/><path d=\"M8 24 h30 M8 30 h30 M8 36 h30\" stroke=\"#9c7434\" stroke-width=\"1.2\"/><path d=\"M14 18 v22 M20 18 v22 M26 18 v22 M32 18 v22\" stroke=\"#9c7434\" stroke-width=\"1\"/><rect x=\"7\" y=\"16.5\" width=\"32\" height=\"4\" rx=\"2\" fill=\"#7a4a22\"/>"},"carpetrack":{"occupiable":false,"name":"打地毯架","icon":"<path d=\"M7 43 V8 M39 43 V8\" stroke=\"#4a4f55\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M5 10 h36\" stroke=\"#4a4f55\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M11 10 h24 v20 h-24 z\" fill=\"#b8323c\" stroke=\"#5a1a1a\" stroke-width=\"1.2\"/><path d=\"M14 14 h18 v12 h-18 z\" fill=\"none\" stroke=\"#e8c070\" stroke-width=\"1.2\"/><path d=\"M23 16 l4 4 l-4 4 l-4 -4 z\" fill=\"#e8c070\"/><path d=\"M12 30 v3 M16 30 v3 M20 30 v3 M24 30 v3 M28 30 v3 M32 30 v3\" stroke=\"#e8c070\" stroke-width=\"1\"/>"},"cart":{"occupiable":false,"name":"手推车","icon":"<rect x=\"8\" y=\"12\" width=\"30\" height=\"16\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><circle cx=\"15\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><circle cx=\"31\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><path d=\"M38 20 h6\" stroke=\"#3f2d1d\" stroke-width=\"2.5\"/>"},"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\"/>"},"mangle":{"occupiable":false,"name":"轧水机","icon":"<path d=\"M10 42 l4 -26 M36 42 l-4 -26\" stroke=\"#2f3439\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M8 42 h30\" stroke=\"#2f3439\" stroke-width=\"2.5\" stroke-linecap=\"round\"/><rect x=\"11\" y=\"15\" width=\"24\" height=\"6\" rx=\"3\" fill=\"#e8dcc0\" stroke=\"#5a4a2a\" stroke-width=\"1.3\"/><rect x=\"11\" y=\"22\" width=\"24\" height=\"6\" rx=\"3\" fill=\"#e8dcc0\" stroke=\"#5a4a2a\" stroke-width=\"1.3\"/><rect x=\"14\" y=\"7\" width=\"18\" height=\"6\" rx=\"1.5\" fill=\"#2f3439\"/><circle cx=\"39\" cy=\"18\" r=\"6\" fill=\"none\" stroke=\"#2f3439\" stroke-width=\"2\"/><path d=\"M39 12 v12 M33 18 h12\" stroke=\"#2f3439\" stroke-width=\"1.4\"/><path d=\"M45 18 v-6\" stroke=\"#7a4a2a\" stroke-width=\"2.5\" stroke-linecap=\"round\"/>"},"shelf":{"occupiable":false,"name":"架子","icon":"<rect x=\"8\" y=\"5\" width=\"30\" height=\"36\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"9\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/><rect x=\"11\" y=\"20\" width=\"24\" height=\"8\" fill=\"#d4b98f\"/><rect x=\"11\" y=\"31\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/>"},"stove":{"occupiable":false,"name":"火炉","icon":"<rect x=\"9\" y=\"8\" width=\"28\" height=\"30\" rx=\"3\" fill=\"#5a5a5a\" stroke=\"#2b2b2b\" stroke-width=\"1.5\"/><circle cx=\"17\" cy=\"20\" r=\"4\" fill=\"#8a8a8a\"/><circle cx=\"29\" cy=\"20\" r=\"4\" fill=\"#8a8a8a\"/><circle cx=\"23\" cy=\"28\" r=\"4\" fill=\"#8a8a8a\"/><path d=\"M16 8 q2 -6 5 -3 q3 -6 6 0 q3 -4 4 2\" fill=\"none\" stroke=\"#e0362e\" stroke-width=\"2\"/>"},"table":{"occupiable":false,"name":"桌子","icon":"<rect x=\"7\" y=\"7\" width=\"32\" height=\"32\" rx=\"5\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"12\" width=\"22\" height=\"22\" rx=\"3\" fill=\"#d1a675\"/>"},"tree":{"occupiable":false,"name":"树","icon":"<rect x=\"20\" y=\"28\" width=\"6\" height=\"14\" rx=\"1\" fill=\"#6e4a2a\"/><circle cx=\"23\" cy=\"19\" r=\"13\" fill=\"#3f8a4a\" stroke=\"#2c5e33\" stroke-width=\"1.5\"/><circle cx=\"16\" cy=\"23\" r=\"7\" fill=\"#57a35e\"/><circle cx=\"30\" cy=\"14\" r=\"7\" fill=\"#57a35e\"/>"},"trough":{"occupiable":false,"name":"漂洗槽","icon":"<path d=\"M9 34 l-2 8 M37 34 l2 8\" stroke=\"#5a3a1a\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M4 18 h38 l-4 16 h-30 z\" fill=\"#a8733f\" stroke=\"#5a3a1a\" stroke-width=\"1.4\" stroke-linejoin=\"round\"/><path d=\"M6.5 19.5 h33 l-1 4 h-31 z\" fill=\"#6fb7e0\" stroke=\"#2f6f9a\" stroke-width=\".8\"/><path d=\"M12 23.5 v10.5 M23 23.5 v10.5 M34 23.5 v10.5\" stroke=\"#5a3a1a\" stroke-width=\"1\"/><path d=\"M14 21.4 q2 -1 4 0 M26 21.8 q2 -1 4 0\" fill=\"none\" stroke=\"#e8f4fb\" stroke-width=\"1\" stroke-linecap=\"round\"/>"},"washtub":{"occupiable":false,"name":"洗衣盆","icon":"<ellipse cx=\"23\" cy=\"38\" rx=\"15\" ry=\"4\" fill=\"#5a3a1a\" opacity=\".35\"/><path d=\"M6 17 h34 l-4 20 q-13 4 -26 0 z\" fill=\"#b07a45\" stroke=\"#5a3a1a\" stroke-width=\"1.5\" stroke-linejoin=\"round\"/><path d=\"M7.5 24 h31 M9 31 h28\" stroke=\"#4a4f55\" stroke-width=\"2\"/><ellipse cx=\"23\" cy=\"17\" rx=\"17\" ry=\"4.5\" fill=\"#cfe8f2\" stroke=\"#5a3a1a\" stroke-width=\"1.5\"/><path d=\"M14 16 q3 -2 6 0 M25 17.5 q3 -2 6 0\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"1.2\" stroke-linecap=\"round\"/><rect x=\"27\" y=\"4\" width=\"10\" height=\"15\" rx=\"1.5\" fill=\"#d9b98a\" stroke=\"#5a3a1a\" stroke-width=\"1.2\" transform=\"rotate(14 32 11)\"/><path d=\"M28.500 7 h7 M28.500 10 h7 M28.500 13 h7\" stroke=\"#8a6a3a\" stroke-width=\"1\" transform=\"rotate(14 32 11)\"/>"}},"wallTypes":{},"objects":[{"cell":[1,1],"type":"counter"},{"cell":[1,2],"type":"bench"},{"cell":[1,4],"type":"shelf"},{"cell":[1,8],"type":"tree"},{"cell":[2,3],"type":"desk"},{"cell":[2,7],"type":"carpetrack"},{"cell":[3,3],"type":"cart"},{"cell":[3,4],"type":"basket"},{"cell":[4,2],"type":"washtub"},{"cell":[4,5],"type":"washtub"},{"cell":[4,7],"type":"trough"},{"cell":[5,4],"type":"bench"},{"cell":[6,2],"type":"basket"},{"cell":[6,3],"type":"table"},{"cell":[6,8],"type":"washtub"},{"cell":[7,2],"type":"mangle"},{"cell":[8,1],"type":"stove"},{"cell":[8,4],"type":"stool"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Amparo","gender":"F","role":"worker","color":"#c62828","avatar":{"bg":"#6e2c4b","skin":"#f3d3b5","hair":"#1c1a1a","style":"bun","shirt":"#f4efe6","apron":true},"clue":"她的<b>列</b>中某处有一个<b>洗衣篮</b>。","job":"熨烫女工","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Amparo\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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=\"#1c1a1a\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 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\"/></svg>","solverRole":"worker","constraints":[{"type":"col_has","obj":"basket"}]},{"id":"B","name":"Baltasar","gender":"M","role":"worker","color":"#2e7d32","avatar":{"bg":"#35607a","skin":"#e4b998","hair":"#3a2a1c","style":"short","shirt":"#4a5a7a","mustache":true,"mustacheColor":"#3a2a1c","apron":true},"clue":"他<b>以北恰好一行</b>处有一个<b>男人</b>。","job":"洗衣男工","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Baltasar\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#4a5a7a\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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 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\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"worker","constraints":[{"type":"rel_any","dir":"N","exact":1,"gender":"M"}]},{"id":"C","name":"Consuelo","gender":"F","role":"worker","color":"#1565c0","avatar":{"bg":"#ad1457","skin":"#f0cdb0","hair":"#7a4a2a","style":"ponytail","shirt":"#f4efe6","apron":true,"headband":"#c62828"},"clue":"她在<b>手推车</b>旁边。","job":"洗衣女工","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Consuelo\"><rect width=\"80\" height=\"80\" fill=\"#ad1457\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#7a4a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 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\"/><rect x=\"26\" y=\"23\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#c62828\"/></svg>","solverRole":"worker","constraints":[{"type":"beside","obj":"cart"}]},{"id":"D","name":"Domingo","gender":"M","role":"worker","color":"#6a1b9a","avatar":{"bg":"#5d4037","skin":"#e7b98f","hair":"#1c1a1a","style":"short","shirt":"#2f3b4c","cap":true,"beard":true},"clue":"他所在区域里恰好有<b>两个别的人</b>。他在<b>最后一列</b>。","job":"送货员","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Domingo\"><rect width=\"80\" height=\"80\" fill=\"#5d4037\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f3b4c\"/><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=\"#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=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#1c1a1a\"/><path d=\"M24 24 Q24 11 40 11 Q56 11 56 24 Z\" fill=\"#22406f\"/><rect x=\"22\" y=\"22\" width=\"36\" height=\"5\" rx=\"2\" fill=\"#12213a\"/><circle cx=\"40\" cy=\"18\" r=\"2.6\" fill=\"#f0b429\"/></svg>","solverRole":"worker","constraints":[{"type":"with_count","n":2},{"type":"col","cols":[8]}]},{"id":"E","name":"Encarna","gender":"F","role":"customer","color":"#e65100","avatar":{"bg":"#3d2a5a","skin":"#f6d8c0","hair":"#8a8278","style":"bob","shirt":"#5b2c6f","glasses":true,"necklace":true},"clue":"她坐在一张<b>长椅</b>上。她<b>与一位洗衣房工人独处</b>。","job":"酒店管家","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Encarna\"><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=\"#5b2c6f\"/><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\"/><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\"/></svg>","solverRole":"customer","constraints":[{"type":"on","obj":"bench"},{"type":"with_role","role":"worker","exact":true}]},{"id":"F","name":"Fermín","gender":"M","role":"customer","color":"#00838f","avatar":{"bg":"#1b2a33","skin":"#f1c8a5","hair":"#1c1a1a","style":"slick","shirt":"#1b1b1b","bow":true,"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=\"Fermín\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><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 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":"customer","constraints":[{"type":"col_has","obj":"washtub"}]},{"id":"G","name":"Graciela","gender":"F","role":"customer","color":"#ad1457","avatar":{"bg":"#00695c","skin":"#f6d8c0","hair":"#d9b464","style":"long","shirt":"#f4efe6","necklace":true,"earrings":true},"clue":"她在一个<b>洗衣盆</b>旁边。","job":"带着婚纱的新娘","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Graciela\"><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=\"#f4efe6\"/><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\"/><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":"customer","constraints":[{"type":"beside","obj":"washtub"}]},{"id":"V","name":"Ventura","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#d9d4cc","style":"bald","shirt":"#8b7a5a","mustache":true,"mustacheColor":"#d9d4cc","apron":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=\"Ventura\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8b7a5a\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#d9d4cc\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 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\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#d9d4cc\"/><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":["Ironing Room"]},{"type":"beside","obj":"mangle"}]}],"victim":"V","murderer":"F","solution":{"A":[1,2],"D":[2,8],"B":[3,6],"C":[4,3],"E":[5,4],"G":[6,7],"V":[7,1],"F":[8,5]},"walkthrough":[{"place":["C","V"],"cand":{"A":[[1,2],[2,2],[2,4],[3,2],[5,2],[5,4],[6,4],[8,2],[8,4]],"B":[[2,5],[2,6],[3,5],[3,6],[3,7],[5,5],[5,6],[5,7],[6,5],[6,6],[6,7],[8,5],[8,6],[8,7]],"D":[[2,8],[3,8],[5,8],[8,8]],"E":[[1,2],[5,4]],"F":[[1,5],[2,5],[3,5],[5,5],[6,5],[8,5]],"G":[[3,5],[5,5],[6,7]]},"text":"Ventura被发现在熨烫室的轧水机（R7C2）旁边：R7C1、R7C3或R8C2（R6C2是洗衣篮）——而凶手与他独处，所以熨烫室里恰好有两个人。Consuelo在手推车（R3C3）旁边：R3C2或R4C3（R3C4是洗衣篮，R2C3的书桌在办公室里）。Amparo的列中某处有一个洗衣篮（R3C4或R6C2），所以她在第2列或第4列；Encarna坐在长椅上，R1C2或R5C4——同样在第2列或第4列。被限制在同样两列里的两个人，会把这两列占满：第2列和第4列里再没有别人。因此Consuelo不在R3C2：<b>Consuelo在R4C3</b>，在洗涤间。Ventura的R8C2在第2列，R7C3在Consuelo所在的列：<b>Ventura在R7C1。</b>留待之后的两个事实：Domingo在最后一列，而第8列的每个空格都在晾晒院——所以Domingo在院子里，院子里恰好有三个人（他和另外两个），第8列里再没有别人；还有，Baltasar以北恰好一行处有一个男人，所以他不在第1行。"},{"place":["E","G"],"cand":{"A":[[1,2],[2,2],[8,2]],"B":[[2,5],[2,6],[3,6],[8,5],[8,6]],"D":[[2,8],[3,8],[8,8]],"F":[[1,5],[2,5],[8,5]]},"text":"Encarna与一位洗衣房工人独处：她所在的区域里恰好有两个人，她和一名工人。坐在入口处R1C2的长椅上，她身边根本没有人——R2C2在她自己的列，R2C1和R3C1在Ventura的列，R1C1是柜台。所以<b>Encarna在R5C4</b>，坐在洗涤间的长椅上，和她在一起的工人是Consuelo。洗涤间因此满了：里面再没有别人。第4列是Encarna的，所以Amparo在第2列——R1C2、R2C2或R8C2（R3C2在已满的洗涤间里）。Graciela在一个洗衣盆旁边。洗衣盆R4C2和R4C5旁边的每个方格都在洗涤间里；洗衣盆R6C8旁边有R5C8（Encarna的行）、R7C8（Ventura的行）和R6C7：<b>Graciela在R6C7</b>，在晾晒院。"},{"place":["F","A"],"cand":{"B":[[2,6],[3,6]],"D":[[2,8],[3,8]]},"text":"现在清点晾晒院的人数。Domingo说他所在区域里恰好有两个别的人，所以院子里恰好有三个人——Domingo、Graciela，还有一个人。第三个会是谁？还剩四个人：Amparo、Baltasar、Domingo和Fermín，对应四个空列：第2、5、6、8列。Amparo在第2列，Domingo在第8列；Fermín的列中有一个洗衣盆——第2、5或8列——所以他在第5列，第6列留给Baltasar。除去已被占用的第4至7行，第6列还剩R1C6、R2C6、R3C6和R8C6——全都在院子里：Baltasar是院子里的第三个人，院子满了。Fermín在第5列的方格：R1C5和R2C5在已满的院子里，R3C5在已满的洗涤间里，第5至7行已被占用——<b>Fermín在R8C5</b>，在熨烫室。与Ventura独处的就是他：Fermín是凶手。第1、2、3行留给Amparo、Baltasar和Domingo；Baltasar不在第1行，而Domingo的列里树在R1C8——所以Amparo在第1行：<b>Amparo在R1C2</b>，坐在入口处的长椅上。"},{"place":["B","D"],"cand":{},"text":"Baltasar在第6列，第2行或第3行（R2C6或R3C6），Domingo在第8列，第2行或第3行（R2C8或R3C8）。Baltasar以北恰好一行处有一个男人：在R2C6的话，北边一行的人会是Amparo——一个女人。所以<b>Baltasar在R3C6</b>，Domingo取第2行：<b>Domingo在R2C8</b>——确实是Baltasar以北一行处的男人。院子里有Domingo、Baltasar和Graciela：和Domingo在一起的恰好是两个别的人，正如他所说。所有人都已放好。"},{"final":true,"text":"案件了结：Ventura在熨烫室里与来取制服的服务员独处。<b>Fermín是凶手！</b>"}],"solver":{"rules":[],"occupiable":["bench","stool"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-10-06"},"score":8.1332}