Cody

# Problem 1179. Knights and Knaves (part 1)

Solution 2716800

Submitted on 20 Jul 2020
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   Fail
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))

ans = logical 0

Error using eval Must be a string scalar or character vector. Error in Test1>@(str)xor(~A,f(eval(str),A,B,X)) (line 4) fA=@(str)xor(~A,f(eval(str),A,B,X)); Error in solver (line 3) correct_road=2-fA(fB('X==1')); Error in Test1 (line 8) assert(isequal(solver(fA,fB),1))

2   Fail
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))

ans = logical 1

Error using eval Must be a string scalar or character vector. Error in Test2>@(str)xor(~A,f(eval(str),A,B,X)) (line 4) fA=@(str)xor(~A,f(eval(str),A,B,X)); Error in solver (line 3) correct_road=2-fA(fB('X==1')); Error in Test2 (line 8) assert(isequal(solver(fA,fB),2))

3   Fail
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))

ans = logical 1

Error using eval Must be a string scalar or character vector. Error in Test3>@(str)xor(~A,f(eval(str),A,B,X)) (line 4) fA=@(str)xor(~A,f(eval(str),A,B,X)); Error in solver (line 3) correct_road=2-fA(fB('X==1')); Error in Test3 (line 8) assert(isequal(solver(fA,fB),1))

4   Fail
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))

ans = logical 0

Error using eval Must be a string scalar or character vector. Error in Test4>@(str)xor(~A,f(eval(str),A,B,X)) (line 4) fA=@(str)xor(~A,f(eval(str),A,B,X)); Error in solver (line 3) correct_road=2-fA(fB('X==1')); Error in Test4 (line 8) assert(isequal(solver(fA,fB),2))

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!