El algortmo subyacente son 2 simples bucles...
Se resuelve abriendo el bucle externo en un ciclo creciente (recorriendo el vector) y el bucle interno iniiciando el cálculo desde la división más profunda hasta la primera (bucle regresivo)
Cantidad = 10
Matriz(Cantidad-1) designa una matriz de 10 elementos.
n = 1
Matriz(0)= n
hacer: Mientras n < (Cantidad -1)
Incrementar n
Cuenta = n
div = ( 1 / n ) la priemra división se realiza fuera del bucle para inicializar la división en su valor más 'profundo'
Hacer Mientras Cuenta > 1
Div = (1 / (Cuenta + Div))
Decrementar Cuenta
repetir
Matriz(n) = Div
repertir
Nota que 'div' y la propia 'matriz' tendrás que declararlo como double, de lo contrario a partir de cierto índice de la matriz la diferencia entre 2 elementos consecutivos será tan pequeña que puede perderse si se emplea un tipo de datos sin la debida precisión.
La verdad es que el algoritmo no ofrece ninguna cmplejidad y todo el mundo debería ser capaz de resolverlo acaso con un poco más de tiempo invertido...