Niezawodna strategia to zrozumieć, zaplanować, a potem kodować — nigdy nie przeskakuj bezpośrednio do pisania. Ustrukturyzowane podejście wychwytuje przypadki brzegowe na wczesnym etapie i jasno komunikuje twoje myślenie.
Ramowy schemat krok po kroku
text
1. CLARIFY -> restate the problem, ask about inputs, ranges, edge cases
2. EXAMPLES -> work a small example by hand; note edge cases (empty, 1, dups)
3. BRUTE FORCE -> state the obvious solution and its complexity
4. OPTIMIZE -> spot the bottleneck; pick a pattern (hash, two-pointer, DP...)
5. CODE -> write clean, modular code while talking through it
6. TEST -> trace examples, check edges, fix bugs
7. ANALYZE -> state final time and space complexity
