Les séquences
On vous donne quatre séquences de nombres, numérotées 1par 4.
OEIS L'emplacement de
0's lorsque les nombres naturels sont répertoriés en binaire. Voici un exemple de calcul de la séquence:0,1,10,11,100,101,110,111 ^ ^ ^^ ^ ^ 0 3 78 10 14Le début de la séquence se déroule comme suit:
0, 3, 7, 8, 10, 14, 19, 20, 21, 23, 24, 27, 29, 31, 36, 37, 40, 45, 51, ...
OEIS Cette séquence comprend le premier nombre naturel, saute les deux suivants, puis inclut les trois suivants, puis saute les quatre suivants et continue.
0, 3, 4, 5, 10, 11, 12, 13, 14, 21, 22, 23, 24, 25, 26, 27, 36, ...
OEIS Entiers positifs où à la fois le nombre de
0et le nombre de1dans la représentation binaire du nombre sont des puissances de2.2, 4, 5, 6, 9, 10, 12, 16, 23, 27, 29, 30, 33, 34, 36, 39,
OEIS Le Hofstadter Q séquence .
a (1) = a (2) = 1;
a (n) = a (na (n-1)) + a (na (n-2)) pour n> 2.1, 1, 2, 3, 3, 4, 5, 5, 6, 6, 6, 8, 8, 8, 10, 9, 10, 11, 11, 12, 12, 12, 12, 16, 14, ...On sait peu de choses sur cette séquence, mais de nombreux résultats empiriques existent. L'une est particulièrement importante et vous pouvez supposer qu'elle est valable pour toute la série:
Cet article a observé que les éléments de la série peuvent être regroupés en générations. Si nous les numérotons à partir de 1, alors la k ème génération contient exactement 2 k éléments. La propriété pertinente est que tous les nombres de la génération k sont obtenus en additionnant deux nombres des générations k-1 et / ou k-2 , mais jamais des générations précédentes. Vous pouvez utiliser cette (et seulement cette) observation pour mettre une limite inférieure sur les éléments restants de la séquence.
Défi
Votre défi est d'imprimer les premiers xnombres à l'intersection des séquences d'entrée données.
Entrée: deux nombres séparés par un espace STDIN. Le premier nombre est un entier de 1à 15inclusif où chaque bit correspond à une séquence. Le bit le plus bas correspond à la séquence 1et le bit le plus élevé correspond à la séquence 4. La seconde est la quantité de nombres x, à afficher STDIN.
Sortie: Les premiers xnombres qui coupent les séquences d'entrée données. Imprimez les nombres STDOUTavec n'importe quel espace clair ou ponctuation comme délimiteur (espaces, tabulations, sauts de ligne, virgules, deux-points, points, etc.).
Exemples
1. Imprimez les premiers 3nombres de chaque séquence.
Contribution: 15 3
Production: 10,23,40
2. Imprimez les premiers 12chiffres du numéro de séquence 1et 4.
Contribution: 9 12
Production: 3,8,10,14,19,20,21,23,24,31,37,40
3. Imprimez les premiers 10nombres dans l'ordre2 .
Contribution: 2 10
Production: 0,3,4,5,10,11,12,13,14,21
4. Imprimez les premiers 6nombres dans les séquences 3et 4.
Contribution: 12 6
Production: 2,4,5,6,9,10
Détails
- Vous pouvez imprimer la sortie au fur et à mesure ou à la fois à la fin.
Un grand merci à tous ceux qui ont aidé avec cela dans le chat! Cette question a grandement profité du fait d'être dans le bac à sable .
x?
12 5exemple jusqu'au même index,10cela vient en effet avant9dans l'intersection ... comme, comment, en parcourant les séquences, décideriez-vous de sauter l'9in # 3 comme intersection possible? Comme si # 3 avait7dedans, alors vous seriez obligé de le sauter car cela n'apparaît pas dans # 4