Sebagai putaran dari tantangan saya ke Puzzling , tujuan Anda adalah menghasilkan 2016
.
Aturan:
- Anda harus memasukkan angka
10 9 8 7 6 5 4 3 2 1
dalam urutan itu. Mereka dapat digunakan sebagai bilangan bulat individu atau digabung bersama (seperti1098
), tetapi10
tidak dapat dipisahkan menjadi1
dan0
- tidak ada karakter (s) dapat hadir di antara digit. Perhatikan bahwa, dalam beberapa bahasa,10
mungkin sebenarnya tidak mewakili integer literal10
, yang dapat diterima. - Kode Anda tidak boleh mengandung angka lain atau variabel angka atau konstanta yang telah ditentukan sebelumnya (jadi
T
Pyth tidak diperbolehkan, karena itu adalah konstanta numerik). - Anda harus menghitung
2016
menggunakan angka. Cukup mengeluarkan2016
tanpa melakukan operasi apa pun pada angka yang diperlukan (misalnya, dengan mendekode string yang disandikan yang hanya terdiri dari karakter alfabet) tidak diperbolehkan. Mengeluarkan2016
dalam jumlah banyak (seperti20
, lalu16
) juga tidak diperbolehkan; Anda harus memiliki satu output yang terdiri dari nilai numerik2016
. - Jawaban yang valid dengan byte paling sedikit menang.
20
dan16
dan mencetaknya satu demi satu atau apakah jumlah kebutuhan yang dihitung menjadi 2016 sebelum mencetak? 2) Apakah fungsi diizinkan? 3) Apakah rangkaian angka diperbolehkan? misalnya1098
(saya berasumsi ya dengan komentar sebelumnya, tetapi hanya untuk mengonfirmasi) 4) Apakah "menghitung 2016 menggunakan bilangan bulat" berarti bahwa kita tidak akan pernah dapat mengapung di mana pun dalam langkah perantara? misalnya, bisakah saya kuadratkan angka dan dibulatkan?T987654321
?10
harus disertakan sehingga Anda harus mengatasinya. 6 Selama10
muncul sebelumnyaT
.Jawaban:
Jelly ,
171514 byteCobalah online!
Bagaimana itu bekerja
sumber
Hexagony, 61 byte
Tidak akan menang, tetapi saya hanya ingin melakukan tantangan di Hexagony.
Ini menggunakan metode yang berbeda dari jawaban lain (jauh lebih buruk). Dibutuhkan beberapa faktor tahun 2016 (2,3,6,7,8) dan melipatgandakan semuanya.
Diperkecil:
Tidak dijinakkan:
Penjelasan segera hadir;
sumber
Pyth, 16 byte
Apakah pembagian integer, lalu tambahkan (3-21).
Coba di sini .
sumber
TI-BASIC,
1715 byteIni menggunakan metode @ nicael.
17 byte:
Solusi dari Puzzling ini dapat langsung diterjemahkan ke dalam TI-BASIC.
sumber
Japt,
1716 byteSaya benci ini 17. Mungkin akan menemukan solusi lain.YAYZ.Penjelasan:
321q
adalah akar kuadrat dari 321.~~
lantai nomor itu.Cobalah online!
sumber
Γ
==~~
:-)109876/54-321Β¬f
adalah 15 :-D109876/54-321q)f
sekarang berfungsi. Saran lainnya tidak.Matlab / Oktaf, 23 byte
Cobalah online
sumber
bc, 14
Tidak ada yang menarik di sini - meminjam dari jawaban lain.
sumber
109876 54/3+21-p
Skor setara dc 16, tetapi tidak menjamin jawaban sendiri.Haskell, 31 byte
Bukan yang terpendek,
10+9*8-7+654*3-21
seperti terlihat dalam jawaban lain bekerja di Haskell juga, tetapi sesuatu yang berbeda.Ini membangun daftar dimulai dengan
10
dan9*8*7+6 = 510
, jadi offset500
untuk elemen-elemen berikut. Seluruh daftar adalah[10,510,1010,1510,2010,2510 ...]
. Kami memilih4th
elemen (berbasis indeks 0), yaitu2010
dan menambahkan3*2*1 = 6
. Voa.Saya gunakan
const 6 5 = 6
untuk menyingkirkan5
yang tidak diperlukan.sumber
Python 2, 20 byte
Sekali lagi, itu membosankan sama
2016.(740)
. Manfaatkan fakta bahwa jika Anda tidak memiliki angka desimal dalam ekspresi Anda, itu akan mengembalikan bilangan bulat.sumber
> <> (ikan), 18 byte
penjelasan:
mengalikan 9 8 dan 7 bersama untuk mendapatkan 504, membalikkan tumpukan dan membalikkannya tepat sebelum 4 ditambahkan, lalu mengalikan 504 dan 4 untuk mendapatkan 2016. Kemudian mencetak angka dan mengakhiri program sebelum 3 angka terakhir (saya bisa melakukan setelah itu juga tanpa perbedaan, jika itu penting menurut peraturan).
sumber
Matematika ++ , 17 byte
Sebenarnya, ini tercetak
2016.0
. Tetapi benar-benar tidak ada cara untuk mencetak string yang tepat2016
dalam bahasa ini.Solusi 17-byte TI-BASIC juga dapat digunakan di sini.
sumber
Polyglot, 17 Bytes
Kode ini, pertama kali digunakan dalam jawaban TI-BASIC Thomas Kwa , juga berfungsi dalam:
JavaScript (input konsol, oleh karena itu tidak valid)Perlu verifikasi keduaPerl 5 (fungsi, oleh karena itu tidak valid).Perlu verifikasi keduasumber
10+9*8-7+654*3-21
bukan JavaScript atau fungsi Perl.πΌππππ 2, 15 karakter / 17 byte
Try it here (Firefox only).
Diterjemahkan ke
round(109876/54+3-21)
.Terima kasih kepada @Dennis karena telah menghemat 2 byte!
sumber
Java 7, 31 byte
Membosankan port dari jawaban lain, yang menurut saya jawaban Jelly @ Dennis adalah yang pertama.
sumber
PHP, 27 byte
(22 byte) terlalu membosankan,
jadi saya menggunakan 10 hingga 9 sebagai angka terpisah:
solusi lain, sebagian besar dengan cheat kecil:
sumber
Milky Way 1.6.5 ,
2825 bytePenjelasan
sumber
BotEngine ,
42393613x2 = 26sumber
05AB1E , 15 byte
Cobalah online!
Jawaban Port of Dennis.
sumber
Keempat, 22 byte
Perhitungan yang sama terlihat pada jawaban lain.
Cobalah online
sumber
C 37 byte
Tema yang sama seperti banyak yang hadir.
sumber
VBA, 15 byte
(Perhitungan tanpa malu-malu dicuri dari Dennis )
sumber
JavaScript (ES6), 21 byte
Jika "hitung mundur" pergi ke 0, itu bisa dilakukan dalam 19 byte.
Dan, mengingat ini sudah 2017 sekarang, itu juga bisa dilakukan dalam 21 byte:
sumber