Repdigits são números do formulário a * (10^n - 1)/9
com a in [-9,9]\{0}
(em outras palavras 111, -3333, 66, números que são feitos repetindo apenas um dígito)
Objetivo: Escreva um programa ou função que pegue um único número inteiro positivo N
e imprima N = s_1 + s_2 + ... + s_k
. Deve haver um número por linha e os números precisam estar alinhados à direita. Dois summands não devem ter o mesmo número de dígitos e a adição de zeros não é permitida. A saída deve ser ordenada em ordem crescente ou decrescente (por número de dígitos)
Exemplos:
in:
24192
out:
24192 =
22222 +
2222 -
222 -
33 +
3
in:
24192
out:
-7
-22
+888
+1111
+22222
=24192
in:
113
out:
113= NOT 111+ no empty lines 111+
111+ 00+
2 2 2
Como você pode ver, pode haver várias soluções e alguma liberdade artística é permitida. Os espaços em branco à esquerda e à direita em cada linha são permitidos
Menor número de bytes ganhos
N
las?Respostas:
perl
5-97 92 9386Entrada fornecida como parâmetro:
fonte
/0/
condição de loop.redo
.CJam,
5550 bytesTeste aqui.
Usa o formato de saída
Eu posso jogar isso mais uma vez quando for derrotado.
Explicação:
A matriz resultante é impressa automaticamente no final do programa.
fonte
JavaScript ES6 - 145
Cole no console do Firefox. Executar como
f(24192)
.Saída para
f(24192)
:fonte
55
, inclui um 0 na soma (que é um erro).GolfScript 77
Links de demonstração online:
Uma versão um pouco mais legível (se o GolfScript puder ser chamado de legível) com a versão de testes de unidade está disponível aqui .
fonte