algoritmo original do tompkins