Considérons une séquence basée sur les relations de récurrence f(n) = f(n-1)+f(n-2)
, en commençant par f(1) = x1, f(2) = x2
. Pour x1 = 2, x2 = 1
, la séquence commence comme ceci:
2 1 3 4 7 11 18 29 47 76 123 199 322 521 843
La concaténation en une chaîne donnera:
213471118294776123199322521843
Maintenant, divisez cette liste en le plus petit nombre possible qui donne y(n) > y(n-1)
. Commencez par le premier numéro, puis le deuxième, etc. Le premier numéro de sortie doit toujours être un seul chiffre. Remplissez le dernier numéro avec le nombre de zéros requis.
2 13 47 111 829 4776 12319 93225 218430
Vous obtiendrez deux nombres, (x1, x2)
en entrée, sur n'importe quel format pratique, et le défi est de sortir la liste triée.
Règles:
- La fonction et les programmes sont OK
- La séquence initiale doit comporter exactement 15 chiffres (le dernier est
f(15)
). x1
etx2
sont non négatifs (zéro est possible).- La sortie peut être dans n'importe quel format pratique
- Le vecteur de sortie
y
doit être créé pour celay2 > y1
.- D'abord le plus petit possible
y1
, puis le plus petit possibley2
,y3
et ainsi de suite.
- D'abord le plus petit possible
- Si
x1 = x2 = 0
alors sortez 15 zéros (sur le même format que les autres sorties, c'est-à-dire pas000000000000000
).
Exemples :
Input: 1 1
Output: 1 12 35 81 321 345 589 1442 3337 7610
Input: 3 2
Output: 3 25 71 219 315 0811 3121 23435 55898 145300
|
Optional leading zero
Input: 0 0
Output: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Le code le plus court en octets gagne. Veuillez inclure un lien vers un interprète en ligne si possible.
5467
? 54 67
? 5 46 70
?