This logic puzzle took me a whole day to solve, I used a lot of Boolean logic skills I picked up throughout my years of software development just to solve it. It's without a doubt the hardest logic puzzle I have ever encountered.
Here is my solution (warning: wall of text)
I'd ask my 3 questions to any of the guys (regardless), because the way I'm gonna formulate my question should allow me (all in one shot) to: a) extract the truth out of any of them, regardless of being truthful, lying or random. b) solve the language barrier
Q1 (for any of the guys)
Answer yes with da and no with ja then tell me what would a truthful person (that knows whether or not you're going to tell the truth) say if I asked him to tell me what would your answer be to the following question? "is A TRUE?"
The first part of this question "Answer yes with da and no with ja" forces the person to use da for yes and ja for no (regardless of what they mean in his language).
So from the first part of the question, I already eliminated the language barrier.
The second part of the question is "what would a truthful person say about what you're going to say" forces him (even if he lies) to flip his lie to truth.
Here is an explanation to the lie flipping trick:
Assume A is FALSE and B is TRUE.
If you ask A "are you a liar?"
The correct answer is "YES", but since A is FALSE, he'll say "NO"
Now, if we ask B to tell us (from his perspective) what would A answer be to the question of "are you a liar?"
B knows that A would answer it with "NO", so B's answer would be "NO" (similar to A's answer).
Now if we ask A about what B's gonna say about A's answer (I know, Â complicated :P), then we actually gonna get the truth out of A.
Reason for that is, A will now know that B will answer with "NO", and because he's FALSE, he'll flip it to "YES" when he answers us.
Which in this case our original question of "Are you a liar?" would be answered by the liar as "YES".
And the good thing about this logic is that if the person in which we're trying our tricky logic here is already truthful, no truth flipping will occur. (I know it's a bit complicated but try it out for yourself with examples if you want).
So now that we dissected how our first question is formulated (the other two will use the exact same lie flipping trick), we can proceed knowing that a) we don't have a language barrier, and b) whomever we'll ask (TRUE, FALSE, or RANDOM) we should receive a truthful answer.
So back to our first question above ("Is A TRUE?"), we should get either one of two answers YES or NO truthfully and without a language barrier (since we eliminated that with the explicit instruction of "answer YES with DA, and NO with JA")
So if Q1 ("Is A TRUE?") answer was YES (we'll get to the NO answer in a bit), then it means person A is TRUE, that leaves us with B and C being either FALSE or RANDOM
For that, here is my second question
Q2 (for any of the guys, in case Q1 answer was YES)
Answer yes with da and no with ja then tell me what would a truthful person (that knows whether or not you're going to tell the truth) say if I asked him to tell me what would your answer be to the following question? "is B FALSE?"
Notice that I'm using the same lie flipping logic as Q1 (i.e. we'll get a truthful answer no matter what, and we won't have a language barrier).
If the answer was 'da' which means yes (since I forced him to use da for yes), then A is TRUE, B is FALSE, and C is RANDOM
But if answered with no, then A is TRUE, B is RANDOM, and C is FALSE.
That solves the puzzle in 2 questions only.
However, if the answer to Q1 wasn't YES (i.e. it was NO), this means A is not TRUE, which leaves us with him being either FALSE or RANDOM
So my second question in that case (using the same logic as the first one) would be:
Q2 (for any of the guys) in case Q1 answer was NO
Answer yes with da and no with ja then tell me what would a truthful person (that knows whether or not you're going to tell the truth) say if I asked him to tell me what would your answer be to the following question? "is A FALSE?"
Notice that this question is also using the same logic as Q1 (i.e. we'll get a truthful answer no matter what, and we won't have a language barrier since I forced him to use da for yes).
From this, if the answer was yes, then A is FALSE, which leaves us with B and C as either TRUE or RANDOM. But if he answered NO, then A can only be RANDOM in this case (cause from Q1 we found out that A is not TRUE, and form Q2 we found out that he's not FALSE either).
For that my third question would be:
Q3 (for any of the guys) in case Q1 answer was NO
Answer yes with da and no with ja then tell me what would a truthful person (that knows whether or not you're going to tell the truth) say if I asked him to tell me what would your answer be to the following question? "is B TRUE?"
This answer along with Q2 & Q1 answers will give us the full picture.
Here are the 4 possible answers along with their meanings:
(1)
Q1 answer = NO, Q2 answer= NO, Q3 answer = YES
This means, A is RANDOM, B is TRUE and C is FALSE
(2)
Q1 answer = NO, Q2 answer= NO, Q3 answer = NO
This means A is RANDOM, B is FALSE, and C is TRUE
(3)
Q1 answer = NO, Q2 answer= YES, Q3 answer = YES
This means A is FALSE, B is TRUE, and C is RANDOM
(4)
Q1 answer = NO, Q2 answer= YES, Q3 answer = NO
This means A is FALSE, B is RANDOM, and C is TRUE
Â
Log in to comment