Canadian-Computing-Contest-Solutions
My Problem Solving Process
1. Define the problem
- Skin the problem down to its backbone
- Filter out the useless information from the original question and simplify it
- Re-iterate the problem with the new definition
2. Concept and Fundamental
- Note down any significant points on the first reading of the original problem
- Making a highlight of the key concepts of the problem
- Verify the notes during the second reading of the simplified problem
3. Algorithmn
- Classify the problem
- Brainstorm possbile solutions
- Imagine doing the cs program on paper
- Search for an appropriate algorithm
- Check for:
- Time complexity
- Memory complexity
- Check for:
- Test the algorithmn with your test cases
- Note down potential problems you may encouter
4. Code
- Spending more time typing than thinking likely means that there’s not enough thought behind the code being written.
5. Debug
- Ask the right questions why the program don't work.
- Example: Did I spell my output words correctly?
- Should of copy & pasted ^^
- Example: Did I spell my output words correctly?
- Refer to potential problem list
- Make several test cases to help with debugging
Comments? Conserns? Suggestions?
Feel free to initiate an issue!