Hola,
Podés empezar la recursión desde la última posición hacia la primera, y ahí no cambian los valores de "pos" y menos aun los de "largo".
Si empezás de la primera posición del texto, se hace más complicado todo. Precisarías pasarle otro parámetro adicional a la función recursiva, o llamar a alguna función auxiliar para corregir los problemas que surjan, y nada de eso queremos que hagan.
Esto está aclarado en la letra también.
Espero que haya quedado claro,
Eduardo