Un algo qui donne les numérateurs c'est pas très compliqué, suffit de renvoyer n fois "1"
Les dénominateurs par contre, je vois au moins deux solutions :
De façon débile (et inefficace), énumérer tous les n-uplets possibles (avec une condition pour que l'algo s'arrete, par exemple si tes n nombres deviennent > n ça ne sert à rien de continuer...).
Mieux (c'est probablement cette solution qu'on attend de toi), faire un algo récursif qui prend entrée n, p et q et te renvoie les fractions egyptiennes à n termes dont le résultat est p/q. Ensuite, il te suffira de l'appeler avec p=q=1.
L'idée, c'est par exemple pour n=3, tu veux trouver trois nombres k1, k2, k3 tels que 1/k1 + 1/k2 + 1/k3 = 1
Tu commences par choisir k1, disons que tu le prends égal à 3. Il te reste à trouver k2 et k3 tels que 1/3 + 1/k2 + 1/k3 = 1, c'est à dire 1/k2 + 1/k3 = 2/3. Pour ça, tu rappelles ton algorithme récursivement avec n=2, p=2, q=3.