O strategie fiabilă este înțelege, planifică, apoi codifică — nu sari niciodată direct la tastare. O abordare structurată descoperă cazurile limită devreme și comunică clar gândirea ta.
Un cadru pas cu pas
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
