2019 est arrivé et tout le monde a probablement remarqué la particularité de ce nombre: il est en fait composé de deux sous-nombres (20 et 19) représentant une séquence de nombres décroissants consécutifs.
Défi
Étant donné un nombre x, renvoyez la longueur de la séquence maximale de nombres descendants consécutifs qui peuvent être formés en prenant des sous-nombres de x.
Remarques :
- les sous-numéros ne peuvent pas contenir de zéros de tête (par exemple,
1009ne peuvent pas être divisés en10,09) - consécutif et décroissant signifie qu'un nombre dans la séquence doit être égal au nombre précédent -1, ou (par exemple ne peut pas être divisé en car et ne sont pas consécutifs, )
525,2522 ≠ 5 - 1 - la séquence doit être obtenue en utilisant le numéro complet, par exemple dans
7321vous ne pouvez pas jeter7et obtenir la séquence3,2,1 - une seule séquence peut être obtenue à partir du nombre, par exemple ,
3211098ne peut pas être divisé en deux séquences3,2,1et10,9,8
Contribution
- Un nombre entier (
>= 0): peut être un nombre, une chaîne ou une liste de chiffres
Production
- Un entier unique étant donné le nombre maximum de sous-nombres décroissants (notez que la borne inférieure de ce nombre est
1, c'est-à-dire qu'un nombre est composé par lui-même dans une séquence décroissante de longueur un)
Exemples :
2019 --> 20,19 --> output : 2
201200199198 --> 201,200,199,198 --> output : 4
3246 --> 3246 --> output : 1
87654 --> 8,7,6,5,4 --> output : 5
123456 --> 123456 --> output : 1
1009998 --> 100,99,98 --> output : 3
100908 --> 100908 --> output : 1
1110987 --> 11,10,9,8,7 --> output : 5
210 --> 2,1,0 --> output : 3
1 --> 1 --> output : 1
0 --> 0 --> output : 1
312 --> 312 --> output : 1
191 --> 191 --> output : 1
Règles générales:
- C'est le code-golf , donc la réponse la plus courte en octets l'emporte.
Ne laissez pas les langues de golf de code vous décourager de publier des réponses avec des langues autres que le golf de code. Essayez de trouver une réponse aussi courte que possible pour «n'importe quel» langage de programmation. - Des règles standard s'appliquent à votre réponse avec des règles d'E / S par défaut , vous êtes donc autorisé à utiliser STDIN / STDOUT, des fonctions / méthodes avec les paramètres appropriés et des programmes complets de type retour. Ton appel.
- Les failles par défaut sont interdites.
- Si possible, veuillez ajouter un lien avec un test pour votre code (par exemple TIO ).
- De plus, l'ajout d'une explication à votre réponse est fortement recommandé.
210 -> 2,1,0incorrect (identique à 0 -> 0)? La tâche indique que "les sous-numéros ne peuvent pas contenir de zéros de tête ", le zéro est-il un cas particulier?
212019. Il semble que je n'ai pas lu toutes les règles.