on Tuesday 19 August 2014
 The camel can carry at most 1000 bananas and there are 3000 bananas to be carried.

      Let us consider that x trips are needed to carry all the bananas from the starting point S to the place X. The place X is not the market. As the camel eats a banana for each kilometer it travels, so that it cannot travel more than 500 kilometer. Therefore the place X lies between the start point and the market. After bringing all the bananas to the place X, consider another place Y which takes less than x trips, from X to Y. After reaching the place Y, it will take one trip to the market M.
      The camel should carry exactly 2000 bananas from the place X. So we can calculate the distance of SX as 3000 - 5 x SX = 2000, therefore SX = 200 kilometers. Calculate as such for the distance XY, 2000 - 3 x XY = 1000, so XY = 333 1/3. As the both distances are less than 500, the camel can travel back from X to S and Y to X. Therefore the distance BM will be 1000 - 200 - 333 1/3 = 466 2/3.
      Now lets start from the first. Initially the camel take 1000 bananas from the Start point S to the place X at a distance of 200 kilometers. Drops 600 bananas and takes 200 bananas. Then it takes 1000 bananas from P to X and drops 600 bananas, taking 200 bananas. At last it takes 1000 bananas to the place X and drops 800 bananas. There are 2000 bananas at the place X.
      Now the travel from the place X to Y, which is 333 1/3 kilometers. First it takes 1000 bananas from X to Y, drops 333 1/3 and takes 333 1/3 to X. At last it takes 1000 bananas from X and drops 666 2/3. Totally the place Y will have 1000 bananas.
      The final voyage to the market M from Y, where the distance is 466 2/3. It takes 1000 bananas and reach the market with 533 1/3 bananas.

So he will reach the market with 533 bananas.

The basic approach here is to divide the distance in such a way that camel can come back to the start point and maximum number of bananas are present at the mid point.
I came across this new puzzle asked by an Investment Bank in one of the interviews.

A farmer has 3000 bananas which he wants to transfer to a market 1000 km away from his house.
He has a Camel which can carry 1000 bananas at a time but the camel eats one banana for every kilometre he travels.

How many maximum bananas can the farmer take to the market.