Ze względu na wejście pierwszego numeru oraz liczbę sekund (zarówno dodatnie liczby całkowite, zero wykluczono), określić w jak wiele sposobów można zrobić drugi z pierwszego, stosując następujące czynności: +1
, +2
i *3
. Operacje są po prostu stosowane od lewej do prawej.
Przykłady:
Wejście:
1 2
. Wyjście:1
. Czyli, można uzyskać tylko2
poprzez działanie+1
, więc jeden sposób.Wejście:
1 3
. Wyjście:3
. To znaczy, możesz zdobyć 3, wykonując+2
albo+1+1
, albo*3
Wejście:
1 4
. Wyjście:4
.Wejście:
2 6
. Wyjście:6
.Wejście:
2 7
. Wyjście:9
.Wejście:
1 10
. Wyjście:84
.
W przypadku braku możliwości, np. 100 100
Lub 100 80
, wyjście jest 0
.
Możesz również wziąć dane wejściowe jako tablicę lub ciąg znaków z dowolnym wygodnym separatorem.
Najkrótsze rozwiązanie wygrywa.
*3 +2 +1
tyle razy, ile chcesz, a następnie aplikować,+1
aby dostać się do 0.Odpowiedzi:
Pyth -
2624 bajtówWygląda na to, że w Pyth występuje błąd, który powoduje, że pobiera dane wejściowe w niewłaściwej kolejności, ale i tak nie powinno to mieć znaczenia.
Pakiet testowy .
(
1 10
upłynął limit czasu online, ale działał na moim komputerze).źródło
10
, ale pyth jest powolnyJavaScript ES6,
4544 bajtówPrzykładowe przebiegi:
źródło
=B
i(B=)
(b
celowo pominięty) ma 6 znaków, a alternatywą jest przekazywanie,b
3 razy do wywołań rekurencyjnych, które również ma 6 znaków. W każdym razie dobra robota.Pyth, 29 bajtów
Wypróbuj online!
Definiuje funkcję. Dodano trzy bajty w łączu, aby wywołać funkcję.
źródło