Это нить полицейских. Нить грабителей идет сюда .
Напишите программу или функцию, состоящую только из печатных символов ASCII (исключая символы табуляции и новой строки), которые выводят не менее 5 печатных символов ASCII в порядке возрастания (от пробела до тильды / от 32 до 126). Символы могут выводиться несколько раз, если они находятся рядом друг с другом. Один завершающий перевод строки принят. Вы должны предоставить полный вывод, и для каждых 6 символов в вашем коде вы должны предоставить один символ в своем коде в той позиции, в которой он появляется. Если ваш код содержит 5 или менее символов, то вам нужно указать только длину. Вы не должны раскрывать более 1 символа на 6 в вашем коде.
Так что если ваш код alphaprinter
выводит алфавит из az, то вам нужно раскрыть 2 символа вашего кода (используйте подчеркивание для остальных), например:
al__________ // or
__p__p______ // or
__________er
Правила / характеристики:
- Вы не можете добавлять конечные пробелы, которые не имеют функции.
- Вы не можете использовать комментарии (но грабители могут использовать комментарии при взломе кода)
- Встроенные криптографические примитивы (включая любые rng, шифрование, дешифрование и хэш) не допускаются.
- В тех языках, где вывод по умолчанию такой же, как в MATLAB:,
ans =
это принимается, если четко указано и показано, чтоans =
выводится. Также должно быть четко указано, является ли это частью «восходящего результата» или нет. - Выход должен быть детерминированным
- Использование несвободного языка не допускается
- Выходные данные не должны быть последовательными символами. Оба
abcde
иabcdg
являются действительными выходами. - Символы не должны быть различимыми, если вывод содержит не менее 5 символов.
aaaaa
иaaacc
действительны. - Ответы, предполагающие наличие среды REPL, не считаются допустимыми программами или функциями и поэтому не допускаются.
- STDERR не считается допустимым выводом, но данные могут быть записаны в STDERR.
Если выявленные символы являются подчеркиванием, вы должны идентифицировать его, как показано ниже. В этом случае второму и шестому символу раскрываются подчеркивания, а остальные неизвестны.
_____________
| |
Примечание: грабителям нужно только найти код, который выдает тот же результат. Язык, длина решения грабителей и положение обнаруженных символов также должны совпадать.
Ваша оценка - это количество символов в вашем коде. Победителем станет представление с самым низким счетом, которое не было взломано в течение 7 дней. Только заявки, опубликованные в 2015 году (UTC), имеют право на выигрыш. Материалы, которые размещены позже, приветствуются, но не могут выиграть.
Чтобы получить выигрыш, необходимо указать полный код (через 7 дней).
Ваш пост должен быть отформатирован так (nn - количество символов):
Язык, nn символов
Выход:
abcdefghijklmnopqrstuvwxyz
Код (12 символов):
al__________
Если код взломан, вставьте [Cracked] (ссылка на взломщик) в заголовок. Если отправка безопасна, вставьте «Safe» в заголовок и покажите полный код в вашем ответе. Только ответы, которые раскрыли полный код, будут иметь право на выигрыш.
источник
print ( "abcde" )
, я могу открыть три пробела?Ответы:
Гексагония , 8 знаков, сейф
печать
Вы можете попробовать Hexagony онлайн
Решение
Это
`
просто неправильное направление, чтобы код выглядел так, как будто он требует длины стороны 3. Если интерпретатор не выполняется с-d
обратным трюком, он просто удаляется из исходного кода перед определением макета. После этого код соответствует длине стороны 2:Это перемещает указатель памяти (MP) вокруг одного шестиугольника сетки памяти, копируя значение на следующий край, увеличивая его и печатая.
Вот как выглядит сетка памяти, когда MP начинает отмеченную позицию:
Изначально все ребра равны нулю. Первый
&
- неоперативный, но)
увеличивает край и!
печатает1
. Затем"
перемещается обратно влево (край обозначен 2 ). Там&
копирует значение. Поскольку край в настоящее время равен нулю, будет скопирован левый сосед (в направлении MP), который1
мы только что напечатали.)
увеличивает его,!
печатает2
. Это продолжается до тех пор, пока мы посещаем новые края и печатаем все цифры до6
. Когда мы дойдем до края, на котором мы начали, вместо этого&
скопируем правого соседа (потому что значение края положительное), так что край0
снова становится , и поток управления переходит к последней строке, где@
завершает программуПопробуйте онлайн.
источник
123456
, но это только не останавливается и должно быть убито. Это разрешено?Perl, 46 знаков (безопасно)
Выход:
Код:
Мне как-то удалось удалить оригинал за неделю, но я думаю, что это правильно:
источник
Брейнфак, 48 персонажей, взломанный Митчем Шварцем
Я сделал это для грабителей. Это определенно не будет победным представлением :)
Это выводит:
Решение:
Я проверял это здесь .
Подсказка: не пытайтесь найти программы, сгенерированные онлайн-генераторами, ха-ха. Это было написано от руки и может быть решено только логическим мышлением :)
источник
CJam, 13 символов
печать
Вы можете попробовать CJam онлайн.
Решение
Я думал, что основание полицейского на обобщенной квинне было довольно умным и новым. В тот момент я отправил это, я понял , что
__
иer
совершенно бесполезны, поэтому я отправил 8-байтовый CJam копу для более конкурентоспособного счета. Пиету взломал его довольно быстро, поэтому я боялся, что он тоже это поймет. Я предполагаю, что излишне запутанная символьная транслитерация спасла это.В любом случае, код принимает свои собственные символы (кроме
_~
), XOR каждый из них с 19 для запутывания, а затем сортирует их.Этот полицейский привел меня к «открытию» ксортинга , хотя я на самом деле не использую его здесь (и, вероятно, было бы почти невозможно использовать его с короткой обобщенной формой).
источник
Шумный 3SP , 89 символов (безопасно)
Оригинальная программа:
Эта программа печатает
(обратите внимание на начальный пробел) и больше ничего!
Пояснение (* n относится к n-й ячейке памяти):
Последние две команды оказываются достаточными для предотвращения повторного увеличения 1 при последующих проходах через программу, что означает, что ничего больше не печатается, хотя будет продолжаться установка всех адресов памяти от * 36 и далее до значения 36 навсегда ,
источник
an esolang in which structured programming is impossible and every program has to be written from scratch.
0_0 плюс один от меня.This is probably not that language
. Если вы сядете и попытаетесь написать программу, которая выдаст этот вывод, вы, вероятно, получите нечто очень похожее.JavaScript (ES6), 60 символов, взломан пользователем81655
Не обещать победу, но, надеюсь, весело взломать
Это функция, которая возвращает:
редактировать
user81655 взломал его символ за символом:
источник
MatlabOctave, 27 знаков, сейфВызов
Что касается новых языковых ограничений: это также работает в Octave.
Вывод (в октаве): (
ans =
не является частью вывода, первый символ вывода"
)Вывод (в Matlab): (
ans = \n\n
не является частью вывода, вывод является только последней строкой)Решение
источник
It also works in Octave.
R, 60 байт, трещины от планнапа
Выход:
Код:
Я думаю, что это не будет так сложно. Посмотрим.
источник
Джольф , 27 персонажей, взломан Аднаном
печать
Переводчик .
Оригинальный код:
Поздравляю Аднана! Ты пугаешь меня.
Здесь вы можете проверить свою заявку, чтобы увидеть, сколько символов необходимо удалить.
источник
Фортран, 45 знаков, сейф
Полный вывод:
Кот попытался взломать его здесь
Код (45 символов):
Код программы:
источник
/
!PHP, 46 символов, безопасно
Источник:
Выводит строку длиной 84 символа:
намек
Раскрытый код
источник
CJam, 8 байтов, взломан Pietu1998
печать
Вы можете попробовать CJam онлайн .
источник
05AB1E , 13 символов, трещины по quintopia
Я идиот. Я забыл реализовать функцию питания (-_-。). Вот запутанный код:
Мой оригинальный код был:
Объяснение:
Это выведет:
Да, это 99 нулей, за которыми следует 1.
Обратите внимание , у меня есть функция мощности, реализованная прямо сейчас. Так что это может быть сделано в шести байтах:
источник
"4"3*
= 12)Python 3.4, 127 символов
Это мой первый медный пост. Я думаю / надеюсь, что это не слишком сложно или не слишком очевидно.
Запутанный код:
создает этот вывод (в начале 5 пробелов; общая длина 7740 символов):
источник
Pyth, 17 символов, взломан Pietu1998
Выход:
Код:
Мое решение:
Решение Pietu1998:
источник
#
альтернативная форма была новой для меня.)Malbolge, 254 персонажа, взломанный Аднаном
Код:
Выход:
Я вроде обманул, поставив место для каждого 6-го персонажа. Ну что ж...
Взломанный код Аднана:
Оригинальный код:
Я снова обманул, используя генератор текста в Malbolge для этого кода.
источник
Mathematica 10.1, 98 символов, сейф
Выход здесь . Весь вывод содержит 838 316 символов и завершающий перевод строки.
Код:
Да, это должно быть запущено в 10.1. (подсказка) Оригинальная программа:
источник
MATL , 8 символов, сейф
Надеюсь, скоро появится стабильная версия компилятора, работающего в Octave. Между тем, этот коммит GitHub работает и, в частности, запускает оригинальный код, который производит указанный вывод
Это представление считается опубликованным 28 декабря 2015 г., 15:30 UTC
Выход:
Код (8 символов):
Решение
Что оно делает:
источник
Лабиринт , 5 байт, взломан Аднаном
печать
Мой оригинальный код был:
Обратите внимание на завершающий пробел.
Я полагаю, что я должен был пойти на большее количество символов и раскрыть один из них
!
, потому что решение Аднана растет только линейно, когда добавляется больше!
, а мое растет квадратично.источник
PHP, 28 символов
Выводит строку
источник
ES6, 17 символов, взломан Cᴏɴᴏʀ O'Bʀɪᴇɴ
Это функция, которая будет возвращать строку
источник
(i=106)=>i*i-3+''
JavaScript, 83 символа, взломан Мартином Бюттнером
Выход
Код
Выходные данные находятся в консоли JS браузера, такого как Chrome / Firefox.
Исходный код (который может быть недействительным):
источник
Pyth, 6 символов, трещины Pietu1998
Код:
Выход:
Вы можете попробовать Pyth здесь
источник
JavaScript ES6, 134 символа
Да, парень, это было весело. Удачи!
Выходы:
источник
CJam, 12 символов, Cracked by jimmy23013
Выход
Код
источник
Серьезно , 7 байтов, взломано Мартином Бюттнером
Выход:
Не должно быть слишком сложно, даже если результат не совсем то, что вы ожидаете.
источник
Python 3, 58 символов, взломанный Митчем Шварцем
Код:
Выход:
источник
Befunge, 11 персонажей, взломанный (в funge-98) MegaTom
Выход:
Запутанный код:
Все в одной строке, так как правила запрещают переводы строк. Протестировано с использованием http://www.quirkster.com/iano/js/befunge.html .
Изменить: Это юридически взломан, так как я не указал версию, но обратите внимание, что есть решение Befunge-93 еще там.
источник
Perl 5, 30 байт, трещины на Аднана
Код:
Выход:
Трещины:
Аднан нашел банальную трещину : очевидно, я не продумал эту загадку достаточно хорошо. Я написал другое вместо.
источник
Python 2, 62 символа, Cracked by Adnan
Это выглядит как стол.
Это выводит строку
abcde
.Код Аднана:
Мой код:
источник