algo for n=3