Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
1: Write down the problem.
2: Think very hard about it.
3: Write down the solution.
4: If you can't write down the solution, you're not thinking about the right problem.