Tugas
Tugas ini adalah untuk menulis sebuah program yang output konsisten tetapi sebaliknya sewenang-wenang bilangan bulat positif (begitu ketat lebih besar dari 0). Inilah intinya: ketika sumber diulang kali (kode ditambahkan / digabungkan ke dirinya sendiri), program harus memiliki Probabilitas N untuk menghasilkandan probabilitas yang tersisa dari untuk menghasilkantidak berubah.
Contoh
Mari kita asumsikan bahwa sumber awal Anda adalah XYZ
dan menghasilkan integer 3
. Kemudian:
Untuk :
XYZXYZ
harus menghasilkan dengan probabilitas (50% dari waktu) dandengan probabilitas juga (50% dari waktu).Untuk :
XYZXYZXYZ
harus menghasilkan dengan probabilitas (66.666% dari waktu) dandengan probabilitas (33,333% dari waktu)Untuk :
XYZXYZXYZXYZ
harus menghasilkan dengan probabilitas (75% dari waktu) dan dengan probabilitas (25% dari waktu)
dan seterusnya....
Aturan
Anda harus membangun program lengkap . Outputnya harus dicetak ke STDOUT.
Program Anda, secara teori, harus menghasilkan setiap nilai yang mungkin dengan probabilitas yang disebutkan di atas, tetapi sedikit penyimpangan dari hal ini karena penerapan acak baik-baik saja ( asalkan implementasi bukan dari distribusi yang berbeda - Anda tidak dapat menggunakan distribusi normal untuk menghemat byte ) .
Program harus (sekali lagi, dalam teori) bekerja untuk nilai besar secara sewenang-wenang , tetapi batasan teknis karena ketepatannya baik untuk besar .
Output harus dalam basis 10 (dilarang di basis lain atau dengan notasi ilmiah dilarang). Trailing / spasi terdepan dan nol terkemuka diizinkan.
Sumber awal harus (tentu saja) setidaknya sepanjang 1 byte. Anda mungkin tidak menganggap baris baru antara salinan sumber Anda. Program tidak boleh mengambil input (atau memiliki input kosong yang tidak digunakan).
Ini adalah kode-golf , jadi skor jawaban adalah panjang dari sumber (asli) dalam byte, dengan skor yang lebih rendah lebih baik.
Catatan: Tantangan ini adalah versi yang lebih sulit dari ini .