Напишіть програму, яка здатна випадково генерувати себе.
Це потрібно зробити на основі лексем, які використовуються у вихідному коді. Якщо вихідний код вашої програми складається з 50 унікальних жетонів і становить 60 лексем, то програма повинна виводити 60 жетонів, де кожен маркер випадковим чином вибирається з одного з 50 унікальних жетонів.
Наприклад, ця програма матиме шанс на 50 ^ 60 відтворити себе.
Що таке маркер? Це залежить від мови. Наприклад, ідентифікатори ( foo_bar
), ключові слова ( while
) та числа ( 42
) вважатимуться лексемами на більшості мов. Пробіли не враховуються на більшості мов.
Додаткові правила:
- Вихідні дані можуть містити лише маркери, знайдені у вихідному коді програм, розділені відповідним роздільником
- Вихід повинен бути такої ж довжини, що і вихідний код програми, відлічений лексемами
- Може використовуватися лише одна мова програмування
- Вихідний код повинен мати не менше 3-х унікальних маркерів
- Виключіть коментарі з вихідного коду
- Програма повинна мати лише той, який має шанс U ^ L відтворити себе
Оцінка балів: Перемагає програма, яка має найкращі шанси відтворити себе.