Here's a brain-teaser that I learned in college about a year ago. Our professor said that they use this one during some Microsoft job interviews. Here it goes.
You have $100 dollars cash that you need to put into envelopes in order to give change. Your manager wants you to use the least amount of envelopes necessary to make change for any amount. How many envelopes does it take to make every correct amount of change, using the minimum amount of envelopes?