Sua tarefa é decompor um número usando o formato abaixo.
Isso é semelhante à conversão de base, exceto que, em vez de listar o digits
na base, você lista values
, de modo que a lista seja adicionada à entrada.
Se a base especificada for n
, cada número da lista deve estar na forma de k*(n**m)
, onde 0<=k<n
e m
é único em toda a lista.
Especificações
- Qualquer formato de entrada / saída razoável. Seu programa / função recebe 2 entradas e gera uma lista.
- A lista de saída pode estar em qualquer ordem.
0
pode ser excluído ou incluído.- Leading
0
são permitidos. - Built-ins são permitidos .
Casos de teste
number base converted list
input1 input2 output
123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000]
11 2 [8,2,1] or [0,0,0,0,8,0,2,1]
727 20 [400,320,7]
101 10 [100,1] or [100,0,1]
Pontuação
Isso é código-golfe . A solução mais curta em bytes vence.
code-golf
number
sequence
number-theory
base-conversion
code-golf
bitwise
hashing
code-golf
string
ascii-art
whitespace
code-golf
math
code-golf
code-golf
image-processing
counting
code-golf
math
arithmetic
checksum
code-golf
code-golf
math
arithmetic
number-theory
code-golf
array-manipulation
random
code-golf
string
code-golf
math
ascii-art
base-conversion
code-golf
graphical-output
geometry
3d
code-golf
math
linear-algebra
matrix
code-golf
math
number
sequence
code-golf
array-manipulation
code-golf
math
matrix
linear-algebra
code-golf
number
sequence
counting
code-golf
string
code-golf
string
restricted-source
quine
sorting
code-golf
string
geometry
code-golf
string
code-golf
networking
code-golf
base-conversion
code-golf
math
matrix
code-golf
arithmetic
linear-algebra
matrix
code-golf
number
arithmetic
grid
code-golf
number
source-layout
code-golf
string
bitwise
checksum
code-golf
array-manipulation
code-golf
string
probability-theory
code-golf
tips
code-golf
sequence
code-golf
string
math
sequence
calculus
code-golf
string
palindrome
bioinformatics
code-golf
math
combinatorics
counting
permutations
code-golf
parsing
logic-gates
code-golf
arithmetic
number-theory
combinatorics
code-golf
math
sequence
polynomials
integer
code-golf
string
ascii-art
chess
code-golf
string
code-golf
number
code-golf
string
ascii-art
parsing
code-golf
code-golf
number
natural-language
conversion
code-golf
arithmetic
code-golf
string
code-golf
ascii-art
decision-problem
Freira Furada
fonte
fonte
JavaScript (ES6), 47 bytes
fonte
Gelatina, 12 bytes
Pode ser muito mais curto ...
Experimente online!
fonte
lḞr0⁴*×b
Deveria trabalhar.0r⁴*³%I
funciona também.lr0⁴*×b
tem a mesma contagem de bytes, sem todos os zeros extras.Pitão -
1211 bytesApenas um FGITW, pode ser mais curto.
Conjunto de Teste .
fonte
_
para um byte :)J,
2019 bytesUso
Explicação
fonte
CJam, 16 bytes
Um bloco sem nome que espera a base e o número no topo da pilha (nessa ordem) e os substitui pela lista de dígitos (incluindo zeros internos, sem zeros à esquerda).
Teste aqui.
Explicação
fonte
TSQL, 68 bytes
fonte
Python 2, 44 bytes
Saídas do menos significativo para o mais, com muitos zeros extras.
Para gerar mais significativo para menos:
Recursa, retirando repetidamente dígitos
n
com divmod enquanto aumenta o multiplicador do valor do localc
.fonte
range(-n,1)
vez derange(n,-1,-1)
?range(n)
.Rubi,
3534 bytesEsta é uma porta da resposta Python do xnor , mas imprime
n
vezes, para que o caso de teste seja727 20
impresso7
,320
,400
, e 7240
s. Sugestões de golfe são bem-vindas.Edit: 1 byte graças a Jordan.
fonte
n.times{|i|p ...}
.Mathematica, 12 bytes (não concorrente)
Gostaria de saber se a Wolfram Research criou essa função depois de ver o desafio do OP!
Isso foi introduzido na versão 11.0 (agosto de 2016).
fonte
Mathematica, 46 bytes
Explicação:
fonte
DiagonalMatrix
. Por favor, explique como funciona neste caso.Raquete, 82 bytes
Eu sou um vencedor (!)
fonte
<n 1
não funciona? (Eu não sei Racket em tudo)'
. É uma boa pergunta, no entanto.<
é apenas uma variável com uma função ligado a ele)JavaScript (ES7), 68 bytes
Teste
Usos de teste
Math.pow
para compatibilidade do navegador.fonte
**
não é um operador JavaScript válido, certo?JavaScript, 75 bytes
Só por diversão :) Poderia jogar mais, mas não sei muito bem como.
ES7, 66 bytes
Se o ES7 for permitido, então:
fonte
O , 17 bytes
Duas notas:
O terceiro caso de teste não funciona devido a um erro na conversão de base. Veja fase / o # 68 .
Isso não funciona no intérprete online.
b
ainda não havia sido implementado.fonte
> <>, 28 bytes
Espera que os valores de entrada estejam presentes na pilha no início do programa.
Como> <> não possui objetos de lista, a saída é apresentada como uma lista de valores separados por nova linha, com as 'unidades' na primeira linha. Um exemplo de execução:
@ OP, se este não for um formato de saída aceitável, informe-me e editarei a resposta de acordo.
fonte
PHP, 55 bytes
Usa a codificação Windows-1252.
Execute assim (
-d
adicionado apenas para estética):fonte
C #, 77 bytes
fonte
Na verdade, 17 bytes (não concorrentes)
Experimente online!
Este envio não é concorrente porque o
♀
comando foi adicionado após este desafio.Explicação:
fonte
♀
? (Golfed fora quatro bytes)Pip , 13 bytes
Fazer isso da maneira antiga acabou sendo mais curto do que usar o
TB
operador de conversão de base. O código executa um loop while até quea
(o número) seja0
. A cada iteração, ele a imprimea%o
e subtraia
.o
é pré-inicializado1
e multiplicado porb
(a base) a cada iteração. (Essa abordagem mantém todos os se0
adiciona uma liderança0
.)Experimente online!
fonte