Mengingat masukan dari angka pertama dan angka kedua (keduanya bilangan bulat positif, zero dikenakan pemotongan), menentukan dalam berapa banyak cara Anda bisa membuat keluar kedua dari yang pertama, menggunakan tindakan berikut: +1
, +2
dan *3
. Operasi hanya diterapkan dari kiri ke kanan.
Contoh:
Input:
1 2
. Output:1
. Yaitu, Anda hanya bisa mendapatkan2
dengan melakukan+1
, jadi satu cara.Input:
1 3
. Output:3
. Yaitu, Anda bisa mendapatkan 3 dengan melakukan+2
atau+1+1
, atau*3
Input:
1 4
. Output:4
.Input:
2 6
. Output:6
.Input:
2 7
. Output:9
.Input:
1 10
. Output:84
.
Dalam hal tidak ada cara, misalnya 100 100
, atau 100 80
, output 0
.
Anda juga bisa mengambil input sebagai array, atau string dengan pemisah yang nyaman.
Solusi terpendek menang.
*3 +2 +1
sebanyak yang Anda inginkan, kemudian melamar+1
untuk mendapatkan 0.Jawaban:
Pyth -
2624 byteTampaknya ada bug di Pyth yang membuatnya mengambil input dengan urutan yang salah, tetapi toh itu tidak masalah.
Test Suite .
(
1 10
kehabisan waktu online, tetapi berfungsi di komputer saya).sumber
10
, tetapi pyth slooooooowJavascript ES6,
4544 byteContoh berjalan:
sumber
=B
dan(B=)
(b
dihilangkan dengan sengaja) adalah 6 karakter dan alternatifnya dilewatkan,b
3 kali untuk panggilan rekursif yang juga 6 karakter. Ngomong-ngomong, kerja bagus.Pyth, 29 byte
Cobalah online!
Menentukan fungsi. Menambahkan tiga byte di tautan untuk memanggil fungsi.
sumber