Задача состоит в том, чтобы найти строку символов, которые не могут появиться ни в одной легальной программе на выбранном вами языке программирования. Это включает в себя комментарии, строки или другие «неисполняемые» части.
Вызов
- Ваша программа может быть специфической для конкретной версии или реализации среды компилятора / интерпретатора / среды исполнения вашего языка. Если это так, пожалуйста, уточните подробности.
- Разрешены только стандартные параметры компилятора / интерпретатора / среды выполнения. Вы не можете передать какой-то странный флаг своему компилятору, чтобы получить конкретный результат (например, передать флаг, чтобы преобразовать предупреждения в ошибки).
- Если вашему языку программирования требуется определенная кодировка (например, UTF-8), ваша строка также должна быть правильно закодирована (то есть строки, которые терпят неудачу исключительно из-за ошибок декодирования символов, не допускаются).
- Каждый отдельный персонаж в вашем представлении должен быть допустим в юридической программе; то есть вы не можете просто использовать символ, который всегда отвергается.
- Компилятор / интерпретатор / среда выполнения должны выдавать ошибку при предоставлении любого исходного кода, который содержит вашу строку в качестве подстроки. Ошибка не обязательно должна быть одинаковой во всех программах - одно встраивание вашей строки может вызвать синтаксическую ошибку, а другое - ошибку времени выполнения.
счет
- Кратчайшая незаконная строка для каждого языка выигрывает.
- Вы должны объяснить, почему ваша строка недопустима (почему она не может появиться где-либо в легальной программе).
- Оспорьте неверные решения в комментариях. Точнее говоря, вы должны предоставить ссылку на TIO или эквивалентную версию, демонстрирующую легальную программу (т.е. ту, которая не выдает никаких ошибок), которая содержит предложенную подстроку.
- Некоторые языки (например, Bash, Batch, Perl) позволяют добавлять произвольные двоичные данные в программу, не влияя на достоверность (например, используя
__DATA__
в Perl). Для таких языков вы можете отправить решение, которое может появиться только в таком последнем разделе. Обязательно запишите это в своем ответе. (Определение этого «конечного раздела» зависит от языка, но обычно означает любой текст после того, как синтаксический анализатор полностью перестал читать сценарий).
пример
В Python я мог бы представить
x
"""
'''
но это может быть встроено в большую программу
"""
x
"""
'''
y
'''
так что это не допустимо.