Một hoán vị của một tập là một song ánh chức năng . Ví dụ: nếu thì hàm \ pi: x \ mapsto 1 + (x + 1 \ mod 4) là một hoán vị:
Chúng ta cũng có thể có hoán vị trên các tập hợp vô hạn, hãy lấy làm ví dụ: Hàm là một hoán vị, hoán đổi số lẻ và chẵn số nguyên trong khối hai. Các yếu tố đầu tiên như sau:
Thử thách
Nhiệm vụ của bạn cho thử thách này là viết một hàm / chương trình thực hiện bất kỳ 1 hoán vị nào trên các số tự nhiên dương. Điểm của giải pháp của bạn là tổng số điểm sau khi ánh xạ chúng với hoán vị được thực hiện.
Thí dụ
Giả sử chúng ta thực hiện hoán vị trên được thực hiện với Python:
def pi(x):
return x - 1 + 2*(x % 2)
Ký tự d
có điểm mã , . Nếu chúng ta làm điều này cho mọi nhân vật, chúng ta sẽ nhận được:
Tổng của tất cả các ký tự được ánh xạ này là , đây sẽ là điểm cho chức năng đó.
Quy tắc
Bạn sẽ thực hiện hoán vị dưới dạng hàm hoặc chương trình
- đã cho một số tự nhiên , trả về / đầu ra
- nhằm mục đích thách thức này không không chứa
- hoán vị phải không hoán vị một tập con vô hạn của
- chức năng / chương trình của bạn không được phép đọc nguồn của chính nó
Chấm điểm
Điểm số được tính bằng tổng của tất cả các điểm mã (byte không có thể không phải là một phần của mã nguồn) theo hoán vị đó (các điểm mã phụ thuộc vào ngôn ngữ của bạn 2 , bạn có thể sử dụng SBCS, UTF-8, v.v. ngôn ngữ của bạn hỗ trợ nó).
Bài nộp với số điểm thấp nhất sẽ thắng, mối quan hệ bị phá vỡ bằng cách gửi sớm nhất.
Ngoại trừ các hoán vị chỉ hoán vị một tập con hữu hạn của , nghĩa là tập hợp phải là vô hạn.
Nếu nó cải thiện điểm số của bạn, ví dụ, bạn có thể sử dụng đệ trình Jelly được mã hóa UTF-8 thay vì SBCS thông thường.