Compte tenu de la séquence OEIS A033581 , qui est la séquence infinie, la n ième terme (0-indexation) est donnée par la formule de la forme fermée 6 × n 2 .
Votre tâche consiste à écrire du code, qui génère tous les sous-ensembles de l'ensemble des N premiers nombres de la séquence, de sorte que la somme du sous-ensemble soit un carré parfait.
Règles
- L'entier
N
est donné en entrée. - Vous ne pouvez pas réutiliser un nombre déjà utilisé dans la somme. (c'est-à-dire que chaque numéro peut apparaître au plus une fois dans chaque sous-ensemble)
- Les nombres utilisés peuvent être non consécutifs.
- Le code avec la plus petite taille gagne.
Exemple
La séquence donnée est {0,6,24,54,96, ..., 15000}
L'un des sous-ensembles requis sera {6,24,294}, car
6+24+294 = 324 = 18^2
Vous devez trouver tous ces ensembles de toutes les longueurs possibles dans la plage donnée.