Вашим завданням тут буде реалізувати функцію 1, яка формує перестановку на додатні цілі числа (Біекція з натуральних чисел на себе). Це означає, що кожне додатне ціле число повинно з’явитися рівно один раз у перестановці. Улов - ваша функція повинна мати більшу ймовірність вивести непарне число, ніж парне число.
Зараз це може здатися дивним чи неможливим. Напевно, є стільки ж непарних чисел, скільки парні числа? І хоча ця інтуїція правильна для кінцевих множин, вона насправді не відповідає безмежним множинам. Наприклад, візьміть таку перестановку:
1 3 2 5 7 4 9 11 6 13 15 8 17 19 10 21 23 12 25 27 14 29 31 16 33 35 18 37 39 20 41 43 22 45 47 24 49 51 26 53 55 ...
Якщо ви берете будь-який підрозділ послідовності розміром більше вас буде принаймні стільки непарних чисел, скільки парних чисел, таким чином, здається, що ймовірність того, що будь-який випадковий додаток є непарним, більша, ніж парний. Ви також зазначите, що кожне число непарне або парне число з часом з’явиться в послідовності і може з’явитися лише один раз. Таким чином, послідовність є справжньою перестановкою.
Визначення ймовірності
Щоб уникнути плутанини чи неоднозначності, я чітко викладу, що розуміється під вірогідністю цього питання.
Скажімо, у нас є функція . Імовірність того, що число є непарним, буде визначено як межа відношення непарних членів множини до розміру безлічі міру тяжіє до нескінченності.
Наприклад, вищезгадана функція мала б ймовірність непарності .
Це код-гольф, тому відповіді будуть набиратись у байтах, менша кількість байтів - краща.
Додаткові виклики
Ось кілька цікавих ідей, з якими можна пограти і, можливо, спробувати здійснити. Вони просто для розваги і жодним чином не впливають на оцінка. Деякі з них навіть не є прийнятними рішеннями цього виклику, і відповідь, яка включає лише рішення для викликів 2 або 3, не є коректною відповіддю і може бути видалена .
Напишіть перестановку з непарною ймовірністю . (це можливо)
Напишіть перестановку, яка має більше непарних чисел, ніж парні числа у для будь-якого але має непарну ймовірність .
Напишіть перестановку, яка не має визначеної ймовірності (тобто немає обмеження).
1: Тут функція буде означати програму або функцію. Це просто фрагмент коду, який приймає вклад і виробляє вихід.