introduction
La séquence OEIS A127421 est la séquence de nombres dont le développement décimal est une concaténation de 2 nombres non négatifs croissants consécutifs. En termes simples, chaque nombre de la séquence est formé en assemblant n avec n + 1 pour une valeur entière non négative de n . Les premiers termes sont:
1, 12, 23, 34, 45, 56, 67, 78, 89, 910, 1011, 1112, 1213, 1314, 1415, 1516, 1617, 1718, 1819, 1920, 2021, 2122, 2223, 2324, 2425, 2526, 2627, 2728, 2829, 2930, 3031, 3132, 3233, 3334, 3435, 3536, 3637, 3738, 3839, 3940, 4041, 4142, 4243, 4344, 4445, 4546,…
Défi
Avec un seul entier positif n , affiche les n premières entrées de la séquence OEIS A127421 par ordre croissant.
- L'entrée et la sortie peuvent être dans n'importe quel format acceptable . Les chaînes ou les nombres conviennent à la sortie.
- Les zéros en tête ne sont pas autorisés.
- Un programme complet ou une fonction est autorisée.
- Pour les besoins de ce défi, n sera positif et inférieur à 100.
- Les failles standard sont interdites par défaut.
- Cette question est le code de golf, donc le plus petit nombre d'octets gagne.
Voici quelques exemples d’entrée et de sortie:
1 => 1 2 => 1, 12 3 => 1, 12, 23 10 => 1, 12, 23, 34, 45, 56, 67, 78, 89, 910
Si vous avez des questions, n'hésitez pas à demander. Bonne chance.
PS c'est mon premier défi, alors j'espère que tout cela a du sens.
EDIT: Suppression de la restriction de sortie pour autoriser les nombres ou les chaînes.
Réponses:
Gelée , 3 octets
Un lien monadique acceptant un entier qui donne une liste d'entiers
Essayez-le en ligne!
Comment?
la source
R , 32 octets
Essayez-le en ligne!
Outgolfed by MickyT , alors allez-y pour cette réponse!
la source
0
de la première sortie.[-1]
plutôt qu'en utilisantstrtoi
ou cela échoue-t-il dans certains cas extrêmes?strtoi
est utilisé pour convertir de"01"
en1
parce quepaste0
va revenirc("01","12","23","34",...)
et nous ne sommes pas autorisés à revenir"01"
.1
Python 3 , 39 octets
Essayez-le en ligne!
la source
f-strings
peut être utilisé pour le golf! Bonne idée.Haskell,
3837 octetsEssayez-le en ligne!
Merci à Cat Wizard pour un octet!
la source
<$>
comme substitutmap
.Cubix , 19 octets
Essayez-le en ligne!
Ceci enveloppe le cube comme suit
Regardez-le courir
Vous avez encore un peu de place pour jouer, mais pour le moment
W
rediriger vers la face supérieure en descendantI1>
mettre en place la pile avec l'entrée et 1 puis rediriger dans la boucle principaleOSo;u
affiche le haut de la pile, ajoute de l'espace pour la pile, la sortie, la suppression et la suppression-!@;Ou)
soustraire le TOS de l’entrée, si 0 arrêt, sinon résultat pop, TOS de sortie, total et incrémenter le TOS. Retour dans la boucle principale.la source
Perl 6 ,
1918 octetsEssayez-le en ligne!
Bloc de code anonyme qui compresse les plages de 0 à n-1 avec 1 à n à l'aide de l'opérateur de concaténation, puis ajoute 0 à chaque élément pour le forcer à un nombre et supprimer les 0 initiaux.
la source
R ,
3029 octetsUn octet supplémentaire grâce à @Giuseppe
Essayez-le en ligne!
Une solution essentiellement mathématique, sauf utiliser
nchar()
plutôt quefloor(log10())
. J'ai été vraiment surpris qu'il soit plus court que la version à cordes .la source
APL (Dyalog) ,
13 à12 octets1 octet enregistré grâce à @FrownyFrog
Essayez-le en ligne!
la source
(⍎⍕,∘⍕1∘+)¨⍳
Brachylog , 6 octets
Essayez-le en ligne!
Explication
la source
Python 2 ,
42 à41 octetsEssayez-le en ligne!
Fonction récursive qui renvoie une liste mélangée de chaînes et d'entiers
la source
n and
Haskell , 34 octets
Essayez-le en ligne!
la source
Fleur , 88 octets
Blossom est un langage de programmation graphique sur lequel je travaille. Comme il ne peut prendre que des graphiques en entrée, ce programme attend donc un graphique comprenant un seul nœud avec son étiquette un entier. Il retourne un graphe d'arêtes connectées pour former le plus proche d'un tableau que je peux obtenir, et le graphe résultant est imprimé pour être affiché.
Une version non modifiée du code est la suivante:
Il définit deux règles: l'une appelée
expand
, qui (s'il existe un nœud avec une étiquette de valeur entière dans le graphique actuel) crée un autre nœud avec son incrément concaténé et réduit la valeur. Cela crée également un bord entre ces deux nœuds. Cette règle a également la condition que x soit supérieur à 0.Le programme
!
exécute cette règle aussi longtemps qu'il est possible de l'appliquer sur le graphique. Dans ce cas, il s'exécutera jusqu'à ce que x soit égal à 0.clean
règle supprime ensuite ce nœud 0 et son bord.Blossom n'était pas fait pour le golf, mais ça ne se fait pas trop mal, je ne pense pas, vu ce que c'est. Il n’existe actuellement pas de moyen facile pour les personnes de tester le code de la floraison (et l’interprète sur lequel je travaille en ce moment n’est pas tout à fait fini et un peu bogué), mais ce n’est pas vraiment une entrée en concurrence!
la source
JavaScript (Node.js) , 25 octets
Essayez-le en ligne!
la source
f=n=>--n?[f(n),n]+-~n:1
Shakespeare , 703 octets
essayez-le ici
version non golfée
la source
Groovy , 35 octets
Essayez-le en ligne!
Je suis venu à la dernière minute avec l'idée d'utiliser * .with au lieu de .collect. Je n'ai aucune idée de ce
it+++it
à quoi on pars mais si c'estit++ + it
ouit + ++it
les deux font la même chose. J'ai essayé de trouver un moyen de se débarrasser de <in .. <en le transformant en 1..it et en le décrémentant, mais je ne pense pas que cela raccourcirait.la source
a+++b
, ce test suggère qu'il est analysé de gauche à droite, ce qui signifie(a++)+b
.C (gcc) ,
4443 octetsEssayez-le en ligne!
la source
%m$
spécificateur de format "indique la position dans la liste d'arguments de l'argument souhaité, indexé à partir de 1" (printf(3)
page de manuel) . C'est très pratique tant que votre bibliothèque C le supporte!%d%d
(et changer l'ordre des arguments) ne fonctionne pas. (Je l'ai essayé, mais je ne sais pas pourquoi il ne produit aucune sortie.)" %d%d"
devriez l'avoir+3*!f(i)
; sinon, le décalage de +5 pointe vers le NUL à la fin de la chaîne.)i+1
noni
. Très intéressant.Pyth ,
986 octetsEssayez-le en ligne!
Explication:
la source
Gelée , 4 octets
Essayez-le en ligne!
Comment ça marche
la source
Python 2 , 44 octets
Essayez-le en ligne!
la source
05AB1E , 6 octets
Essayez-le en ligne!
Explication
LεD<ìï
fonctionnerait pour le même nombre d'octets mais avec une sortie de listela source
APL (Dyalog Classic) , 9 octets
Essayez-le en ligne!
la source
Haskell , 37 octets
Essayez-le en ligne!
la source
Japt
-m
,65 octetsEssayez-le en ligne!
Comme toujours, connais les drapeaux .
Déballé et comment ça marche
la source
ó
ne fonctionne pas ici sans le2
.C # (compilateur interactif Visual C #) ,
103716456 octetsGolfed Essayez-le en ligne!
Ungolfed
Code complet
Versions plus anciennes:
v1.2, 64 octets
v1.1, 71 octets
v1.0, 103 octets
Communiqués
- 8 bytes
- Suppression deConsole
nouveau grâce à raznagul- 7 bytes
- SuppriméSystem
grâce à raznagul-32 bytes
103 bytes
- Solution initiale.Remarques
la source
System.Console
. Ainsi, vous pouvez économiser 15 octets en le supprimant.Console.
: TIOJ, 14 octets
Essayez-le en ligne!
la source
2,&.":/\i.@>:
pour 13 octets. Essayez-le en ligne!ABAP, 101 octets
Pas vraiment une langue de golf, mais je m'amuse beaucoup avec elle
W est le terme en entrée, X est le compteur de 1, Y est X-1 à partir du deuxième passage et Z est une chaîne concaténée.
la source
Powershell,
27 à26 octets-1 octet: merci AdmBorkBork
Script de test:
la source
1.."$args"
place.Python 2 , 41 octets
Essayez-le en ligne!
la source
PHP,
3332 octetsEssayez-le en ligne
Ancienne version
la source
Javascript, 43
44,46,49,53octetsVersions précédentes :
3 octets sauvés grâce à la solution de @ Shaggy (qui est meilleure que la mienne) à supprimer
.keys()
la source