Best hard riddles


If there are four sheep, two dogs and one herds-men, how many feet are there?
Two. Sheep have hooves; dogs have paws; only people have feet.
82.20 %
54 votes

A poor miller living with his daughter comes onto hard times and is not able to pay his rent. His evil landlord threatens to evict them unless the daughter marries him. The daughter, not wanting to marry the landlord but fearing that her father won't be able to take being evicted, suggests the following proposition to the landlord. He will put two stones, one white and one black, into a bag in front of the rest of the townspeople. She will pick one stone out of the bag. If she picks the white stone, the landlord will forgive their debt and let them stay, but if she picks the black stone, she will marry the landlord, and her father will be evicted anyway. The landlord agrees to the proposal. Everybody meets in the center of the town. The landlord picks up two stones to put in the bag, but the daughter notices that he secretly picked two black stones. She is about to reveal his deception but realizes that this would embarrass him in front of the townspeople, and he would evict them. She quickly comes up with another plan. What can she do that will allow the landlord save face, while also ensuring that she and her father can stay and that she won't have to marry the landlord?
The daughter picks a stone out, keeps it in her closed hand, and proclaims "this is my stone." She then throws it to the ground, and says "look at the other stone in the bag, and if it's black, that means I picked the white stone." The landlord will reveal the other stone, which is obviously black, and the daughter will have succeeded. The landlord was never revealed as a cheater and thus was able to save face.
82.08 %
82 votes

At a dinner party, many of the guests exchange greetings by shaking hands with each other while they wait for the host to finish cooking. After all this handshaking, the host, who didn't take part in or see any of the handshaking, gets everybody's attention and says: "I know for a fact that at least two people at this party shook the same number of other people's hands." How could the host know this? Note that nobody shakes his or her own hand.
Assume there are N people at the party. Note that the least number of people that someone could shake hands with is 0, and the most someone could shake hands with is N-1 (which would mean that they shook hands with every other person). Now, if everyone at the party really were to have shaken hands with a different number of people, then that means somone must have shaken hands with 0 people, someone must have shaken hands with 1 person, and so on, all the way up to someone who must have shaken hands with N-1 people. This is the only possible scenario, since there are N people at the party and N different numbers of possible people to shake hands with (all the numbers between 0 and N-1 inclusive). But this situation isn't possible, because there can't be both a person who shook hands with 0 people (call him Person 0) and a person who shook hands with N-1 people (call him Person N-1). This is because Person 0 shook hands with nobody (and thus didn't shake hands with Person N-1), but Person N-1 shook hands with everybody (and thus did shake hands with Person 0). This is clearly a contradiction, and thus two of the people at the party must have shaken hands with the same number of people. Pretend there were only 2 guests at the party. Then try 3, and 4, and so on. This should help you think about the problem. Search: Pigeonhole principle
82.02 %
46 votes

A king has 100 identical servants, each with a different rank between 1 and 100. At the end of each day, each servant comes into the king's quarters, one-by-one, in a random order, and announces his rank to let the king know that he is done working for the day. For example, servant 14 comes in and says "Servant 14, reporting in." One day, the king's aide comes in and tells the king that one of the servants is missing, though he isn't sure which one. Before the other servants begin reporting in for the night, the king asks for a piece of paper to write on to help him figure out which servant is missing. Unfortunately, all that's available is a very small piece that can only hold one number at a time. The king is free to erase what he writes and write something new as many times as he likes, but he can only have one number written down at a time. The king's memory is bad and he won't be able to remember all the exact numbers as the servants report in, so he must use the paper to help him. How can he use the paper such that once the final servant has reported in, he'll know exactly which servant is missing?
When the first servant comes in, the king should write down his number. For each other servant that reports in, the king should add that servant's number to the current number written on the paper, and then write this new number on the paper. Once the final servant has reported in, the number on the paper should equal (1 + 2 + 3 + ... + 99 + 100) - MissingServantsNumber Since (1 + 2 + 3 + ... + 99 + 100) = 5050, we can rephrase this to say that the number on the paper should equal 5050 - MissingServantsNumber So to figure out the missing servant's number, the king simply needs to subtract the number written on his paper from 5050: MissingServantsNumber = 5050 - NumberWrittenOnThePaper
81.89 %
53 votes