# How to Solve It: A New Aspect of Mathematical Method (Princeton Science Library)

All
Hacker News 7

This Month
Hacker News 1

All
Hacker News 7

This Month
Hacker News 1

Velleman wrote "How to Prove It": https://www.amazon.com/How-Prove-Structured-Approach-2nd/dp/...

Polya wrote "How to Solve It": https://www.amazon.com/How-Solve-Mathematical-Princeton-Scie...

The things I feel deficient at are problems that sound like: 'given an array of prices for a certain stock in a single day, how would you find the maximum profit from one trade?'.My naive answer to that is ignore the absolute prices, but iterate over the array to get an array of price movements, and then weight those by volume data (if that is available) or select the largest (if not). Could you expand on what it is you find problematic about that sort of question, eg lay out what your thought process is and where it gets blocked?

In terms of suggestions, maybe it would be worth your while considering problems a bit outside the programming domain, and working on them someplace other than your desk, on the theory that a change is as good as rest. Martin Gardner's 'Mathematical Recreations' columns for Scientific American were collected into one or more books, and I think some of Ian Stewarts' as well. These are great because they comprise fairly abtruse problems along with a discussion of strategies for dealing with them.

There are of course lots of 'math pouzzle of the week' sites from various universities, and books of math puzzles. but you should definitely pick up 'How to solve it' by Georg Polya, which is considered a classic education text. http://www.amazon.com/How-Solve-It-Mathematical-Princeton/dp... This is over half a century old but it's a great book, it's like having a patient mathematics teacher that wants to help you succeed at your side. Again, study these things away from your desk - find some other study space, even a park, and practice working with paper and in your head. You will retain things better by changing your environment for study.

Another thing that strikes me about your post is that your abilities are affected by the situation - you feel confident of your ability to get things done when allowed space to think, but you don't deal well with high-pressure environments like interviews. This is normal. Build up a good idea of where your intellectual strengths and weaknesses are and what your best strategies for dealing with them are. Don't be afraid to say in an interview 'I'm good at this sort of problem, I'm always slow at that sort so my first response will be a few brain farts...' Remember too that in a good interview, you're not just being rated for your raw intellectual ability, but on how you deal with your limitations and how you go about decomposing a problem. Nobody knows everything!

Lastly, don't assume you must do it in isolation. Maybe part of the stress at interviews is not the questions themselves but the social context. If you can afford it, consider hiring a graduate student in math or CS at a local university to tutor you a few hours a week. A person with an academic leaning will be better equipped to assess and direct your learning ability than someone who is trying to solve the 'puzzle' of filling an open position at a company and who can only provide limited feedback on your performance.

For a small pearl on problem solving, I recommend "How to solve it"[1], by the great mathematician George PĆ³lya[2]. It teaches you simple techniques you can apply when you are stuck, like "draw a picture", "think about a similar problem you already know the solution for", and "solve a relaxed version of your problem". It all looks pretty much like common sense, but it is not. It's one of those few books I think everyone should read (whenever they are stuck).

[1] http://www.amazon.com/How-Solve-Mathematical-Princeton-Scien...

[2] http://en.wikipedia.org/wiki/George_P%C3%B3lya

http://www.amazon.com/How-Solve-It-Mathematical-Princeton/dp...