Viết một chương trình có khả năng tự tạo ngẫu nhiên.
Nó phải làm điều này dựa trên các mã thông báo được sử dụng trong mã nguồn của nó. Nếu mã nguồn chương trình của bạn bao gồm 50 mã thông báo duy nhất và dài 60 mã thông báo, thì chương trình sẽ tạo ra 60 mã thông báo trong đó mỗi mã thông báo được chọn ngẫu nhiên từ một trong 50 mã thông báo duy nhất.
Ví dụ, chương trình này sẽ có cơ hội một trong 50 ^ 60 để tự tái tạo.
Mã thông báo là gì? Điều đó phụ thuộc vào ngôn ngữ. Ví dụ: mã định danh ( foo_bar
), từ khóa ( while
) và số ( 42
) sẽ được tính là mã thông báo trong hầu hết các ngôn ngữ. Khoảng trắng sẽ không được tính trong hầu hết các ngôn ngữ.
Quy tắc bổ sung:
- Đầu ra chỉ có thể chứa mã thông báo được tìm thấy trong mã nguồn chương trình, được phân tách bằng dấu phân cách thích hợp
- Đầu ra phải có cùng độ dài với mã nguồn của chương trình, được tính bằng mã thông báo
- Chỉ một ngôn ngữ lập trình có thể được sử dụng
- Mã nguồn phải có ít nhất 3 mã thông báo duy nhất
- Loại trừ ý kiến từ mã nguồn
- Chương trình chỉ nên có một cơ hội trong U ^ L để tự tái tạo
Ghi điểm: Chương trình có cơ hội tốt nhất để tái tạo chính nó, chiến thắng.