某地发生了了起谋杀案,警察通过排查确定杀人凶手为4个嫌疑犯的一个A说:不是我B说:是CC说:是DD说:C在胡说已知三个人说了真话,一个人 了假话求真正的凶手
以下是详细代码:(注意:本代码源于转载 如有侵权立即下架)
for (var a = 0; a <= 1; a++) {
for (var b = 0; b <= 1; b++) {
for (var c = 0; c <= 1; c++) {
for (var d = 0; d <= 1; d++) {
//接下来把每个人说的话记录下来
var aSay = a == 0;
var bSay = c == 1;
var cSay = d == 1;
var dSay = !cSay;
// 这个时候aSay,bSay,cSay,dSay都是布尔值true/false,布尔值是可以相加的
//已知三个人说了真话,一个人说了假话
if (aSay + bSay + cSay + dSay == 3 && a + b + c + d == 1) {
console.log(a);
console.log(b);
console.log(c);
console.log(d);
//由此可见 c就是凶手
}
}
}
}
}