143547
Explanations:
Multiplication of the 1st & 2nd numbers, 5*3 = 15; 9*2 = 18…thusly, 7*2 = 14
Multiplication of the 1st & 3rd numbers, 5*2 = 10; 9*4 = 36…thusly, 7*5 = 35;
Multiplication of the 1st & the sum of the 2nd & 3rd numbers. The generated result is reduced by the value of the 2nd number, …thusly, 7*(2+5) = 49 - 2 = 47

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.

There are 1 million closed school lockers in a row, labeled 1 through 1,000,000.
You first go through and flip every locker open.
Then you go through and flip every other locker (locker 2, 4, 6, etc...). When you're done, all the even-numbered lockers are closed.
You then go through and flip every third locker (3, 6, 9, etc...). "Flipping" mean you open it if it's closed, and close it if it's open. For example, as you go through this time, you close locker 3 (because it was still open after the previous run through), but you open locker 6, since you had closed it in the previous run through.
Then you go through and flip every fourth locker (4, 8, 12, etc...), then every fifth locker (5, 10, 15, etc...), then every sixth locker (6, 12, 18, etc...) and so on. At the end, you're going through and flipping every 999,998th locker (which is just locker 999,998), then every 999,999th locker (which is just locker 999,999), and finally, every 1,000,000th locker (which is just locker 1,000,000).
At the end of this, is locker 1,000,000 open or closed?

Locker 1,000,000 will be open.
If you think about it, the number of times that each locker is flipped is equal to the number of factors it has. For example, locker 12 has factors 1, 2, 3, 4, 6, and 12, and will thus be flipped 6 times (it will end be flipped when you flip every one, every 2nd, every 3rd, every 4th, every 6th, and every 12th locker). It will end up closed, since flipping an even number of times will return it to its starting position. You can see that if a locker number has an even number of factors, it will end up closed. If it has an odd number of factors, it will end up open.
As it turns out, the only types of numbers that have an odd number of factors are squares. This is because factors come in pairs, and for squares, one of those pairs is the square root, which is duplicated and thus doesn't count twice as a factor. For example, 12's factors are 1 x 12, 2 x 6, and 3 x 4 (6 total factors). On the other hand, 16's factors are 1 x 16, 2 x 8, and 4 x 4 (5 total factors).
So lockers 1, 4, 9, 16, 25, etc... will all be open. Since 1,000,000 is a square number (1000 x 1000), it will be open as well.

You can easily "tile" an 8x8 chessboard with 32 2x1 tiles, meaning that you can place these 32 tiles on the board and cover every square.
But if you take away two opposite corners from the chessboard, it becomes impossible to tile this new 62-square board.
Can you explain why tiling this board isn't possible?

Color in the chessboard, alternating with red and blue tiles. Then color all of your tiles half red and half blue. Whenever you place a tile down, you can always make it so that the red part of the tile is on a red square and the blue part of the tile is on the blue square.
Since you'll need to place 31 tiles on the board (to cover the 62 squares), you would have to be able to cover 31 red squares and 31 blue squares. But when you took away the two corners, you can see that you are taking away two red spaces, leaving 30 red squares and 32 blue squares. There is no way to cover 30 red squares and 32 blue squares with the 31 tiles, since these tiles can only cover 31 red squares and 31 blue squares, and thus, tiling this board is not possible.

You have been given the task of transporting 3,000 apples 1,000 miles from Appleland to Bananaville. Your truck can carry 1,000 apples at a time. Every time you travel a mile towards Bananaville you must pay a tax of 1 apple but you pay nothing when going in the other direction (towards Appleland). What is highest number of apples you can get to Bananaville?

833 apples.
Step one: First you want to make 3 trips of 1,000 apples 333 miles. You will be left with 2,001 apples and 667 miles to go.
Step two: Next you want to take 2 trips of 1,000 apples 500 miles. You will be left with 1,000 apples and 167 miles to go (you have to leave an apple behind).
Step three: Finally, you travel the last 167 miles with one load of 1,000 apples and are left with 833 apples in Bananaville.

Two words are anagrams if and only if they contain the exact same letters with the exact same frequency (for example, "name" and "mean" are anagrams, but "red" and "deer" are not).
Given two strings S1 and S2, which each only contain the lowercase letters a through z, write a program to determine if S1 and S2 are anagrams. The program must have a running time of O(n + m), where n and m are the lengths of S1 and S2, respectively, and it must have O(1) (constant) space usage.

First create an array A of length 26, representing the counts of each letter of the alphabet, with each value initialized to 0. Iterate through each character in S1 and add 1 to the corresponding entry in A. Once this iteration is complete, A will contain the counts for the letters in S1. Then, iterate through each character in S2, and subtract 1 from each corresponding entry in A. Now, if the each entry in A is 0, then S1 and S2 are anagrams; otherwise, S1 and S2 aren't anagrams.
Here is pseudocode for the procedure that was described:
def areAnagrams(S1, S2)
A = new Array(26)
A.initializeValues(0)
for each character in S1
arrayIndex = mapCharacterToNumber(character) //maps "a" to 0, "b" to 1, "c" to 2, etc...
A[arrayIndex] += 1
end
for each character in S2
arrayIndex = mapCharacterToNumber(character)
A[arrayIndex] -= 1
end
for (i = 0; i < 26; i++)
if A[i] != 0
return false
end
end
return true
end

Three ants are sitting at the three corners of an equilateral triangle. Each ant starts randomly picks a direction and starts to move along the edge of the triangle. What is the probability that none of the ants collide?

So let’s think this through. The ants can only avoid a collision if they all decide to move in the same direction (either clockwise or anti-clockwise). If the ants do not pick the same direction, there will definitely be a collision. Each ant has the option to either move clockwise or anti-clockwise. There is a one in two chance that an ant decides to pick a particular direction. Using simple probability calculations, we can determine the probability of no collision.
P(No collision) = P(All ants go in a clockwise direction) + P( All ants go in an anti-clockwise direction) = 0.5 * 0.5 * 0.5 + 0.5 * 0.5 * 0.5 = 0.25

A train leaves from Halifax, Nova Scotia heading towards Vancouver, British Columbia at 120 km/h. Three hours later, a train leaves Vancouver heading towards Halifax at 180 km/h. Assume there's exactly 6000 kilometers between Vancouver and Halifax. When they meet, which train is closer to Halifax?

Both trains would be at the same spot when they meet therefore they are both equally close to Halifax.

Consider the following explanation for why 1=2:
1. Start out Let y = x
2. Multiply through by x xy = x2
3. Subtract y2 from each side xy - y2 = x2 - y2
4. Factor each side y(x-y) = (x+y)(x-y)
5. Divide both sides by (x-y) y = x+y
6. Divide both sides by y y/y = x/y + y/y
7. And so... 1 = x/y + 1
8. Since x=y, x/y = 1 1 = 1 + 1
8. And so... 1 = 2
How is this possible?

Step 5 is invalid, because we are dividing by (x-y), and since x=y, we are thus dividing by 0. This is an invalid mathematical operation (division by 0), and so by not followinng basic mathematical rules, we are able to get strange results like these.

You are standing in a pitch-dark room. A friend walks up and hands you a normal deck of 52 cards. He tells you that 13 of the 52 cards are face-up, the rest are face-down. These face-up cards are distributed randomly throughout the deck.
Your task is to split up the deck into two piles, using all the cards, such that each pile has the same number of face-up cards. The room is pitch-dark, so you can't see the deck as you do this.
How can you accomplish this seemingly impossible task?

Take the first 13 cards off the top of the deck and flip them over. This is the first pile. The second pile is just the remaining 39 cards as they started.
This works because if there are N face-up cards in within the first 13 cards, then there will be (13 - N) face up cards in the remaining 39 cards. When you flip those first 13 cards, N of which are face-up, there will now be N cards face-down, and therefore (13 - N) cards face-up, which, as stated, is the same number of face-up cards in the second pile.

Count the number of times the letter "F" appears in the following paragraph:
FAY FRIED FIFTY POUNDS OF
SALTED FISH AND THREE POUNDS
OF DRY FENNEL FOR DINNER FOR
FORTY MEMBERS OF HER FATHER'S FAMILY.

It appears 14 times. Make sure to count the "F"s in the word "OF", which people commonly miss.