Створіть програму, яка виводить себе.
Однак якщо вихідний код повторюється n разів (мається на увазі об'єднати копію вихідного коду до кінця n-1 рази) , тоді повинна бути 1 / n ймовірність виведення вихідного вихідного коду, 1 / n ймовірність виведення вихідний код повторюється двічі, 1 / n ймовірність виведення вихідного коду повторюється три рази, ... і 1 / n ймовірність виведення вихідного коду n разів.
Наприклад, якщо ваша програма є foobar
, то вона завжди повинна виходити точно foobar
. Тим НЕ менше, якщо ви біжите foobarfoobarfoobarfoobar
, то повинна бути ¼ ймовірністю кожна з виведення foobar
, foobarfoobar
, foobarfoobarfoobar
і foobarfoobarfoobarfoobar
.
- Розподіл кожного можливого виходу повинен бути рівним
- На додаток до стандартних методів вводу / виводу, застосовуючи стандартні лазівки, забороняються, застосовуються стандартні правила квин (не може отримати доступ до власного джерела тощо)
- Це кодовий гольф, тому найкоротша відповідь у байтах виграє
foobarfoobar
), то він би надрукував лишеfoobar
foobarfoobar
це foobar
повторюється два рази, а не один раз.