Você deve escrever um programa ou função que tenha fornecido três números inteiros positivos n b k
como saída ou retorne os últimos k
dígitos antes dos zeros à direita na b
representação base de n!
.
Exemplo
n=7 b=5 k=4
factorial(n) is 5040
5040 is 130130 in base 5
the last 4 digits of 130130 before the trailing zeros are 3013
the output is 3013
Entrada
- 3 inteiros positivos
n b k
onde2 <= b <= 10
. - A ordem dos números inteiros de entrada pode ser escolhida arbitrariamente.
Saída
- Uma lista de dígitos retornados ou emitidos como um número inteiro ou lista inteira.
- Os zeros à esquerda são opcionais.
- Sua solução precisa resolver qualquer exemplo de caso de teste em menos de um minuto no meu computador (apenas testarei casos encerrados. Tenho um PC abaixo da média.).
Exemplos
Novos testes adicionados para verificar a exatidão dos envios. (Eles não fazem parte da regra de tempo de execução com menos de 1 minuto.)
Entrada => Saída (com a opção de omitir zeros à esquerda)
3 10 1 => 6
7 5 4 => 3013
3 2 3 => 11
6 2 10 => 101101
9 9 6 => 6127
7 10 4 => 504
758 9 19 => 6645002302217537863
158596 8 20 => 37212476700442254614
359221 2 40 => 1101111111001100010101100000110001110001
New tests:
----------
9 6 3 => 144
10 6 3 => 544
Isso é código-golfe, então a entrada mais curta vence.
7 5 3
"013" ou "13"?
7 10 4
caso de teste eu diria13
n
ou k
? Ou podemos limitá-los ao intervalo do tipo inteiro do idioma?