Напишите программу, способную генерировать себя случайным образом.
Он должен делать это на основе токенов, используемых в его исходном коде. Если исходный код вашей программы состоит из 50 уникальных токенов и имеет длину 60 токенов, то программа должна вывести 60 токенов, где каждый токен случайным образом выбирается из одного из 50 уникальных токенов.
Например, у этой программы был бы один шанс из 50 ^ 60 воспроизвести себя.
Что такое токен? Это зависит от языка. Например, идентификаторы ( foo_bar
), ключевые слова ( while
) и цифры ( 42
) будут считаться токенами в большинстве языков. Пробелы не учитываются в большинстве языков.
Дополнительные правила:
- Вывод может содержать только токены, найденные в исходном коде программы, разделенные соответствующим разделителем
- Вывод должен быть той же длины, что и исходный код программы, с учетом токенов
- Можно использовать только один язык программирования
- Исходный код должен иметь как минимум 3 уникальных токена
- Исключить комментарии из исходного кода
- Программа должна иметь только один шанс, чтобы воспроизвести себя
Подсчет очков: побеждает программа, которая имеет наилучшие шансы воспроизвести себя.