I think I made a mistake.
After we found out the truth teller, we need 2 questions for each of
the "tl" and "ll" groups.
This is because we know at least one of them is a liar and nothing
else. Say the answer is "yn" then the group could be "tl" or "ll".
Similarly if the answer is "nn" then also the group could be "tl" or
"ll". We need two questions to tell who's who and not one.
So my previous argument was wrong.

Here's another argument.
Say there are 'a' number of "tt" groups, 'b' number of "ll" who answer
"yy", 'c' number of "tl" and 'd' number of "ll" whose answer has a
"no" in it. Then total number of questions asked so far for grouping
is 2(a+b+c+d) = N the number of people we started with.
Now with induction we'll prove that for 'p' people we need at most
2p-2 questions.
In the next iteration we have a+b people so we need at most 2(a+b)-2
questions to identify all the truth tellers and liars among a+b.
Once we have that we need 2 questions each for c,d groups so we need
to ask 2(c+d) questions.
So total questions asked are 2(a+b+c+d) + 2(a+b) -2 + 2(c+d) = 4(a+b+c
+d)-2 = 2N-2.
Hence proved.
For 100 people we need at most 198. The "-2" is coming from the fact
that for the case of N=2 we don't need to ask any questions as both
have to be truth tellers.

I hope I am right this time.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/algogeeks
-~----------~----~----~----~------~----~------~--~---

Reply via email to