secondo me prova con la soluzione che potresti trovare e calcoli il tempo di esecuzione
se non è troppo onerosa la tieni se no magari ne provi un altra