A bad king has a cellar of 1000 bottles of delightful and very expensive wine. A neighboring queen plots to kill the bad king and sends a servant to poison the wine.
Fortunately (or say unfortunately) the bad king's guards catch the servant after he has only poisoned one bottle.
Alas, the guards don't know which bottle but know that the poison is so strong that even if diluted 100,000 times it would still kill the king. Furthermore, it takes one month to have an effect.
The bad king decides he will get some of the prisoners in his vast dungeons to drink the wine. Being a clever bad king he knows he needs to murder no more than 10 prisoners – believing he can fob off such a low death rate – and will still be able to drink the rest of the wine (999 bottles) at his anniversary party in 5 weeks time.
Explain what is in mind of the king, how will he be able to do so?
Think in terms of binary numbers. (now don’t read the solution, give a try).
Number the bottles 1 to 1000 and write the number in binary format.
bottle 1 = 0000000001 (10 digit binary)
bottle 2 = 0000000010
bottle 500 = 0111110100
bottle 1000 = 1111101000
Now take 10 prisoners and number them 1 to 10, now let prisoner 1 take a sip from every bottle that has a 1 in its least significant bit. Let prisoner 10 take a sip from every bottle with a 1 in its most significant bit. etc.
prisoner = 10 9 8 7 6 5 4 3 2 1
bottle 924 = 1 1 1 0 0 1 1 1 0 0
For instance, bottle no. 924 would be sipped by 10,9,8,5,4 and 3. That way if bottle no. 924 was the poisoned one, only those prisoners would die.
After four weeks, line the prisoners up in their bit order and read each living prisoner as a 0 bit and each dead prisoner as a 1 bit. The number that you get is the bottle of wine that was poisoned.
1000 is less than 1024 (2^10). If there were 1024 or more bottles of wine it would take more than 10 prisoners.
A farmer lived in a small village. He had three sons. One day he gave $100 dollars to his sons and told them to go to market. The three sons should buy 100 animals for $100 dollars. In the market there were chickens, hens and goats. Cost of a goat is $10, cost of a hen is $5 and cost of a chicken is $0.50.
There should be at least one animal from each group. The farmer’s sons should spend all the money on buying animals. There should be 100 animals, not a single animal more or less! What do the sons buy?
They purchased 100 animals for 100 dollars.
$10 spent to purchase 1 goat.
$45 spent to purchase 9 hens.
$45 spent to purchase 90 chickens.
You have 25 horses. When they race, each horse runs at a different, constant pace. A horse will always run at the same pace no matter how many times it races.
You want to figure out which are your 3 fastest horses. You are allowed to race at most 5 horses against each other at a time. You don't have a stopwatch so all you can learn from each race is which order the horses finish in.
What is the least number of races you can conduct to figure out which 3 horses are fastest?
You need to conduct 7 races.
First, separate the horses into 5 groups of 5 horses each, and race the horses in each of these groups. Let's call these groups A, B, C, D and E, and within each group let's label them in the order they finished. So for example, in group A, A1 finished 1st, A2 finished 2nd, A3 finished 3rd, and so on.
We can rule out the bottom two finishers in each race (A4 and A5, B4 and B5, C4 and C5, D4 and D5, and E4 and E5), since we know of at least 3 horses that are faster than them (specifically, the horses that beat them in their respective races).
This table shows our remaining horses:
A1 B1 C1 D1 E1
A2 B2 C2 D2 E2
A3 B3 C3 D3 E3
For our 6th race, let's race the top finishers in each group: A1, B1, C1, D1 and E1. Let's assume that the order of finishers is: A1, B1, C1, D1, E1 (so A1 finished first, E1 finished last).
We now know that horse D1 cannot be in the top 3, because it is slower than C1, B1 and A1 (it lost to them in the 6th race). Thus, D2 and D3 can also not be in the to 3 (since they are slower than D1).
Similarly, E1, E2 and E3 cannot be in the top 3 because they are all slower than D1 (which we already know isn't in the top 3).
Let's look at our updated table, having removed these horses that can't be in the top 3:
A1 B1 C1
A2 B2 C2
A3 B3 C3
We can actually rule out a few more horses. C2 and C3 cannot be in the top 3 because they are both slower than C1 (and thus are also slower than B1 and A1). And B3 also can't be in the top 3 because it is slower than B2 and B1 (and thus is also slower than A1). So let's further update our table:
A1 B1 C1
We actually already know that A1 is our fastest horse (since it directly or indirectly beat all the remaining horses). So now we just need to find the other two fastest horses out of A2, A3, B1, B2 and C1. So for our 7th race, we simply race these 5 horses, and the top two finishers, plus A1, are our 3 fastest horses.
You have a basket of infinite size (meaning it can hold an infinite number of objects). You also have an infinite number of balls, each with a different number on it, starting at 1 and going up (1, 2, 3, etc...).
A genie suddenly appears and proposes a game that will take exactly one minute. The game is as follows: The genie will start timing 1 minute on his stopwatch. Where there is 1/2 a minute remaining in the game, he'll put balls 1, 2, and 3 into the basket. At the exact same moment, you will grab a ball out of the basket (which could be one of the balls he just put in, or any ball that is already in the basket) and throw it away.
Then when 3/4 of the minute has passed, he'll put in balls 4, 5, and 6, and again, you'll take a ball out and throw it away.
Similarly, at 7/8 of a minute, he'll put in balls 7, 8, and 9, and you'll take out and throw away one ball.
Similarly, at 15/16 of a minute, he'll put in balls 10, 11, and 12, and you'll take out and throw away one ball.
And so on....After the minute is up, the genie will have put in an infinite number of balls, and you'll have thrown away an infinite number of balls.
Assume that you pull out a ball at the exact same time the genie puts in 3 balls, and that the amount of time this takes is infinitesimally small.
You are allowed to choose each ball that you pull out as the game progresses (for example, you could choose to always pull out the ball that is divisible by 3, which would be 3, then 6, then 9, and so on...).
You play the game, and after the minute is up, you note that there are an infinite number of balls in the basket.
The next day you tell your friend about the game you played with the genie. "That's weird," your friend says. "I played the exact same game with the genie yesterday, except that at the end of my game there were 0 balls left in the basket."
How is it possible that you could end up with these two different results?
Your strategy for choosing which ball to throw away could have been one of many. One such strategy that would leave an infinite number of balls in the basket at the end of the game is to always choose the ball that is divisible by 3 (so 3, then 6, then 9, and so on...). Thus, at the end of the game, any ball of the format 3n+1 (i.e. 1, 4, 7, etc...), or of the format 3n+2 (i.e. 2, 5, 8, etc...) would still be in the basket. Since there will be an infinite number of such balls that the genie has put in, there will be an infinite number of balls in the basket.
Your friend could have had a number of strategies for leaving 0 balls in the basket. Any strategy that guarantees that every ball n will be removed after an infinite number of removals will result in 0 balls in the basket.
One such strategy is to always choose the lowest-numbered ball in the basket. So first 1, then 2, then 3, and so on. This will result in an empty basket at the game's end. To see this, assume that there is some ball in the basket at the end of the game. This ball must have some number n. But we know this ball was thrown out after the n-th round of throwing balls away, so it couldn't be in there. This contradiction shows that there couldn't be any balls left in the basket at the end of the game.
An interesting aside is that your friend could have also used the strategy of choosing a ball at random to throw away, and this would have resulted in an empty basket at the end of the game. This is because after an infinite number of balls being thrown away, the probability of any given ball being thrown away reaches 100% when they are chosen at random.
There are n coins in a line. (Assume n is even). Two players take turns to take a coin from one of the ends of the line until there are no more coins left. The player with the larger amount of money wins.
Would you rather go first or second? Does it matter?
Assume that you go first, describe an algorithm to compute the maximum amount of money you can win.
Note that the strategy to pick maximum of two corners may not work. In the following example, first player looses the game when he/she uses strategy to pick maximum of two corners.
Example 18 20 15 30 10 14
First Player picks 18, now row of coins is
20 15 30 10 14
Second player picks 20, now row of coins is
15 30 10 14
First Player picks 15, now row of coins is
30 10 14
Second player picks 30, now row of coins is
First Player picks 14, now row of coins is
Second player picks 10, game over.
The total value collected by second player is more (20 + 30 + 10) compared to first player (18 + 15 + 14). So the second player wins.
Going first will guarantee that you will not lose. By following the strategy below, you will always win the game (or get a possible tie).
(1) Count the sum of all coins that are odd-numbered. (Call this X)
(2) Count the sum of all coins that are even-numbered. (Call this Y)
(3) If X > Y, take the left-most coin first. Choose all odd-numbered coins in subsequent moves.
(4) If X < Y, take the right-most coin first. Choose all even-numbered coins in subsequent moves.
(5) If X == Y, you will guarantee to get a tie if you stick with taking only even-numbered/odd-numbered coins.
You might be wondering how you can always choose odd-numbered/even-numbered coins. Let me illustrate this using an example where you have 6 coins:
18 20 15 30 10 14
Sum of odd coins = 18 + 15 + 10 = 43
Sum of even coins = 20 + 30 + 14 = 64.
Since the sum of even coins is more, the first player decides to collect all even coins. He first picks 14, now the other player can only pick a coin (10 or 18). Whichever is picked the other player, the first player again gets an opportunity to pick an even coin and block all even coins.
How to measure exactly 4 gallon of water from 3 gallon and 5 gallon jars, given, you have unlimited water supply from a running tap.
Step 1. Fill 3 gallon jar with water. ( 5p – 0, 3p – 3)
Step 2. Pour all its water into 5 gallon jar. (5p – 3, 3p – 0)
Step 3. Fill 3 gallon jar again. ( 5p – 3, 3p – 3)
Step 4. Pour its water into 5 gallon jar untill it is full. Now you will have exactly 1 gallon water remaining in 3 gallon jar. (5p – 5, 3p – 1)
Step 5. Empty 5 gallon jar, pour 1 gallon water from 3 gallon jar into it. Now 5 gallon jar has exactly 1 gallon of water. (5p – 1, 3p – 0)
Step 6. Fill 3 gallon jar again and pour all its water into 5 gallon jar, thus 5 gallon jar will have exactly 4 gallon of water. (5p – 4, 3p – 0)