Пов’язано, але для цього потрібні лише додатні цілі числа і не повинні бути комутативними
Функція сполучення кантора описана в цій статті Вікіпедії . По суті, це така операція, що при застосуванні до двох значень X і Y можна отримати вихідні значення X і Y з отриманим результатом.
Ваше завдання - розробити дві функції: одну, яка виконує X, Y -> Z
та другу, яка виконує Z -> X, Y
. Ось улов: X, Y -> Z
має бути комутативним. Це означає, що Z -> X, Y
не вдасться визначити, чи був вхід X, Y
чи Y, X
.
Офіційним визначенням цього виклику було б:
Виберіть лічильний нескінченний набір S чисел.
Створіть дві функції, які виконують такі завдання:
- Дано не упорядковану пару значень у S, поверніть значення в S
- З огляду на повернене значення від початкової функції, поверніть невпорядковану пару значень, яка оцінює, на вхідне ціле число при передачі через першу функцію. Мені не байдуже поведінка цієї зворотної функції, якщо вхід не є зворотним значенням з першої функції.
Вимоги
- Результат повинен бути однаковим між пробіжками.
{a, a}
є невпорядкованою парою
Примітка. Ваша відповідь, швидше за все, отримає відгук від мене, якщо ви надасте доказ, але я перевіряю відповіді, коли дістанусь до нього, і підтверджу його, коли я досить впевнений, що він працює.
1,2
одна з пар 1,3
може також бути потенційною парою (обидві використовують 1
)?
f
і її зворотній g
, sorted((x, y))
повинна бути такою ж , якsorted(g(f(x, y)))