Dada a entrada do primeiro número e o segundo número (ambos inteiros positivos, zero EXCLUÍDA), determinar em quantas maneiras você poderia fazer o segundo fora do primeiro, usando seguintes ações: +1
, +2
e *3
. As operações são simplesmente aplicadas da esquerda para a direita.
Exemplos:
Entrada:
1 2
. Saída:1
. Ou seja, você só poderia começar2
fazendo+1
, por isso de uma maneira.Entrada:
1 3
. Saída:3
. Ou seja, você pode obter 3 fazendo+2
ou+1+1
, ou*3
Entrada:
1 4
. Saída:4
.Entrada:
2 6
. Saída:6
.Entrada:
2 7
. Saída:9
.Entrada:
1 10
. Saída:84
.
Caso não haja maneiras, por exemplo 100 100
, ou 100 80
, a saída é 0
.
Você também pode receber a entrada como uma matriz ou string com qualquer separador conveniente.
A solução mais curta vence.
*3 +2 +1
quantas vezes quiser e, em seguida, aplicar+1
para chegar a 0.Respostas:
Pitão -
2624 bytesParece haver um bug no Pyth que está fazendo com que ele receba entradas na ordem errada, mas não deve importar de qualquer maneira.
Conjunto de Teste .
(
1 10
atingiu o tempo limite on-line, mas funcionou no meu computador).fonte
10
, mas pyth é slooooooowJavascript ES6,
4544 bytesExemplo é executado:
fonte
=B
e(B=)
(b
omitido de propósito) tem 6 caracteres e a alternativa está passando,b
3 vezes para as chamadas recursivas, que também têm 6 caracteres. Enfim, bom trabalho.Pitão, 29 bytes
Experimente online!
Define uma função. Adicionado três bytes no link para chamar a função.
fonte