Cody

# Problem 1179. Knights and Knaves (part 1)

Solution 1938682

Submitted on 16 Sep 2019 by Augusto Mazzei
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
A=true; B=false; X=1; f=inline('logical(interp1([0,1],[0,x],1))','x','A','B','X'); fA=@(str)xor(~A,f(eval(str),A,B,X)); fB=@(str)xor(~B,f(eval(str),A,B,X)); clear f A B X; assert(isequal(solver(fA,fB),1))

statement = logical 0 road = 1

2   Pass
A=true; B=false; X=2; f=inline('logical(interp1([0,1],[0,x],1))','x','A','B','X'); fA=@(str)xor(~A,f(eval(str),A,B,X)); fB=@(str)xor(~B,f(eval(str),A,B,X)); clear f A B X; assert(isequal(solver(fA,fB),2))

statement = logical 0 road = 2

3   Pass
A=false; B=true; X=1; f=inline('logical(interp1([0,1],[0,x],1))','x','A','B','X'); fA=@(str)xor(~A,f(eval(str),A,B,X)); fB=@(str)xor(~B,f(eval(str),A,B,X)); clear f A B X; assert(isequal(solver(fA,fB),1))

statement = logical 1 road = 1

4   Pass
A=false; B=true; X=2; f=inline('logical(interp1([0,1],[0,x],1))','x','A','B','X'); fA=@(str)xor(~A,f(eval(str),A,B,X)); fB=@(str)xor(~B,f(eval(str),A,B,X)); clear f A B X; assert(isequal(solver(fA,fB),2))

statement = logical 1 road = 2