Introdução
A sequência OEIS A127421 é a sequência de números cuja expansão decimal é uma concatenação de 2 números não negativos crescentes consecutivos. Simplificando, todo número na sequência é formado reunindo n com n + 1 para algum valor inteiro não negativo de n . Os primeiros termos são:
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,…
Desafio
Dado um único número inteiro positivo n , imprima as primeiras n entradas da sequência OEIS A127421 em ordem crescente.
- A entrada e a saída podem estar em qualquer formato aceitável . Seqüências de caracteres ou números são adequados para a saída.
- Zeros à esquerda não são permitidos.
- É permitido um programa ou função completo.
- Para os propósitos deste desafio, n será positivo e menor que 100.
- As brechas padrão não são permitidas por padrão.
- Esta questão é código de golfe, portanto, a menor contagem de bytes vence.
Aqui estão algumas amostras de entrada e saída:
1 => 1 2 => 1, 12 3 => 1, 12, 23 10 => 1, 12, 23, 34, 45, 56, 67, 78, 89, 910
Se você tiver alguma dúvida, não hesite em perguntar. Boa sorte.
PS, este é o meu primeiro desafio, então espero que tudo isso faça sentido.
EDIT: Removida a restrição de saída para permitir números ou seqüências de caracteres.
Respostas:
Gelatina , 3 bytes
Um link monádico que aceita um número inteiro que gera uma lista de números inteiros
Experimente online!
Quão?
fonte
R , 32 bytes
Experimente online!
Outgolfed by MickyT , então vote nessa resposta!
fonte
0
da primeira saída.[-1]
vez de usar,strtoi
ou isso falha em alguns casos extremos?strtoi
está sendo usado para converter de"01"
para1
porquepaste0
retornarác("01","12","23","34",...)
e não podemos retornar"01"
.1
Python 3 , 39 bytes
Experimente online!
fonte
f-strings
pode ser usado para jogar golfe! Boa ideia.Haskell,
3837 bytesExperimente online!
Obrigado ao Cat Wizard por um byte!
fonte
<$>
como um substitutomap
, que pode ser infixado.Cubix , 19 bytes
Experimente online!
Isso envolve o cubo da seguinte maneira
Assista
Ainda temos um pouco de espaço para brincar, mas no momento
W
redirecionar para a face superior indo para baixoI1>
configure a pilha com a entrada e 1, em seguida, redirecione para o loop principalOSo;u
saída da parte superior da pilha, adicione espaço para empilhar, produzir, remover e uturn-!@;Ou)
subtraia TOS da entrada, se 0 interromper o resultado pop, produza TOS, uturn e incrementa TOS. De volta ao loop principal.fonte
Perl 6 ,
1918 bytesExperimente online!
Bloco de código anônimo que fecha o intervalo de 0 a n-1 com 1 a n usando o operador de concatenação e adiciona 0 a cada elemento para forçá-lo a um número e remover os 0s iniciais.
fonte
R ,
3029 bytesUm byte extra graças a @ Giuseppe
Experimente online!
Uma solução principalmente matemática, exceto para usar
nchar()
em vez defloor(log10())
. Fiquei realmente surpreso que veio mais curto que a versão string .fonte
APL (Dyalog) ,
1312 bytes1 byte salvo graças a @FrownyFrog
Experimente online!
fonte
(⍎⍕,∘⍕1∘+)¨⍳
Braquilog , 6 bytes
Experimente online!
Explicação
fonte
Python 2 ,
4241 bytesExperimente online!
Função recursiva que retorna uma lista mista de seqüências de caracteres e números inteiros
fonte
n and
Haskell , 34 bytes
Experimente online!
fonte
Flor , 88 bytes
Blossom é uma linguagem de programação gráfica em que estou trabalhando. Ele pode receber apenas gráficos como entradas, portanto, este programa espera um gráfico compreendendo um único nó com seu rótulo como um número inteiro. Ele retorna um gráfico das arestas conectadas para formar o mais próximo possível de uma matriz que eu possa obter, e o gráfico resultante é impresso na saída.
Uma versão não minificada do código é esta:
Ele define duas regras: uma chamada
expand
, que (enquanto houver um nó com um rótulo com valor inteiro no gráfico atual) cria outro nó com seu incremento concatenado e reduz o valor. Ele também cria uma aresta entre esses dois nós. Essa regra também tem a condição de que x é maior que 0.Ele
!
executa essa regra pelo tempo em que puder ser aplicada no gráfico; nesse caso, ela será executada até que x seja 0. E então oclean
regra removerá esse nó 0 e sua borda.O Blossom não foi feito para jogar golfe, mas acho que não faz muito mal, considerando o que é. Atualmente, não há realmente uma maneira fácil de as pessoas testarem o código de floração (e o intérprete no qual estou trabalhando no momento não está completamente terminado e é um buggy), mas essa não é exatamente uma entrada concorrente!
fonte
JavaScript (Node.js) , 25 bytes
Experimente online!
fonte
f=n=>--n?[f(n),n]+-~n:1
Shakespeare , 703 bytes
tente aqui
versão ungolfed
fonte
Groovy , 35 bytes
Experimente online!
Eu vim no último minuto com a ideia de usar * .com em vez de .collect. Eu não tenho idéia do que
it+++it
analisa, mas se éit++ + it
ouit + ++it
ambos fazem a mesma coisa. Tentei pensar em uma maneira de me livrar do <in .. <transformando-o em 1..it e decrementando, mas acho que não ficaria mais curto.fonte
a+++b
, este teste sugere que é analisado da esquerda para a direita, ou seja(a++)+b
.C (gcc) ,
4443 bytesExperimente online!
fonte
%m$
especificador de formato "indica a posição na lista de argumentos do argumento desejado, indexada a partir de 1" (printf(3)
página de manual) . É bastante útil desde que sua biblioteca C suporte!%d%d
(e mudar a ordem dos argumentos) não funciona. (Eu tentei, mas não sei por que ele não produz nenhuma saída.)" %d%d"
deve ter+3*!f(i)
, caso contrário, os +5 pontos deslocamento para o NUL no final da cadeia.)i+1
, nãoi
. Muito interessante.Pitão ,
986 bytesExperimente online!
Explicação:
fonte
Gelatina , 4 bytes
Experimente online!
Como funciona
fonte
Python 2 , 44 bytes
Experimente online!
fonte
05AB1E , 6 bytes
Experimente online!
Explicação
LεD<ìï
funcionaria para a mesma contagem de bytes, mas com saída da listafonte
APL (Dyalog Classic) , 9 bytes
Experimente online!
fonte
Haskell , 37 bytes
Experimente online!
fonte
Japonês
-m
,65 bytesExperimente online!
Como sempre, conheça as bandeiras .
Descompactado e como funciona
fonte
ó
que não funciona aqui sem o2
.C # (Compilador interativo do Visual C #) ,
103716456 bytesGolfe Experimente online!
Ungolfed
Código completo
Versões mais antigas:
v1.2, 64 bytes
v1.1, 71 bytes
v1.0, 103 bytes
Lançamentos
- 8 bytes
- RemovidoConsole
obrigado novamente a raznagul- 7 bytes
- RemovidoSystem
graças a raznagul-32 bytes
103 bytes
- Solução inicial.Notas
fonte
System.Console
. Então você pode salvar 15 bytes removendo-o.Console.
: TIOJ, 14 bytes
Experimente online!
fonte
2,&.":/\i.@>:
por 13 bytes. Experimente online!ABAP, 101 bytes
Não é realmente uma linguagem de golfe, mas estou me divertindo muito com ela
W é o termo de entrada, X é o contador de 1, Y é X-1 a partir da segunda passagem em diante, Z é uma string concatenada.
fonte
Powershell,
2726 bytes-1 byte: obrigado AdmBorkBork
Script de teste:
fonte
1.."$args"
.Python 2 , 41 bytes
Experimente online!
fonte
PHP,
3332 bytesExperimente Online
Versão antiga
fonte
Javascript, 43
44,46,49,53bytesVersões prévias :
Economizei 3 bytes graças à solução do @ Shaggy (que é melhor que a minha) para remover
.keys()
fonte