Proprio di questo parlavo, l'avrei scritto io se ne avessi avuto il tempo. Tuttavia manca comunque parte della soluzione, una chiamata ricorsiva ci vuole comunque...
(Ed ecco che perché le cose vanno scritte oltre che pensate, avevo tralasciato questo dettaglio)
Resta comunque più efficiente.