休伊,杜威和路易被他們的叔叔質疑。這些是他們的陳述:約束編程布爾求解器
•休伊:「杜威和路易在這方面有相同的份額;如果一個人是有罪的,所以是其他「
•杜威:‘如果休伊是有罪的,那麼我也是。’
•路易:‘杜威和我不都無罪’
。他們的叔叔知道他們是偵察員,他們意識到他們無法說謊。
我的解決方案。
var bool :D; var bool :L; var bool :H;
constraint D <->L;
constraint H -> D;
constraint D!=L;
solve satisfy;
output[show(D), "\n", show(L),"\n", show(H)];
Minizinc無法解決它。
我明白了爲什麼我不能寫杜威!=路易? 給出 =====不合格===== 。 但不是(杜威和路易)作品 – user2975699
「杜威和我都不是兩個有罪」可能是因爲這兩個都不是有罪。約束「dewey!= louise」意味着其中一個是有罪的(另一個是無罪的)。 – hakank