Примечание . Эта задача теперь закрыта для новых копов. Это сделано для того, чтобы никто не мог публиковать материалы, которые остаются без изменений, потому что больше нет грабителей, заинтересованных в вызове.
В этой игре «полицейские-разбойники» каждый полицейский напишет простую программу, которая выдаст один результат. Затем они обнародуют четыре вещи о своей программе:
- Язык
- Длина программы
- Желаемый вывод
- Скремблированная версия исходного кода
Затем грабители должны расшифровать исходный код, чтобы их программа функционировала так же, как и оригинал.
Полицейские правила
Вам нужно написать простую программу, которую грабители попытаются воссоздать.
Ваша оригинальная программа должна иметь простую функциональность: после выполнения она выводит одну строку / число и останавливается. Он должен давать одинаковый вывод независимо от того, когда и где он запущен, и не должен зависеть от дополнительных библиотек или Интернета.
Ваша программа и выходные данные должны использовать печатный ASCII (разрешены переводы строки и пробелы). Вывод должен быть не более 100 символов, а запуск программы на приемлемой машине должен занимать менее 5 секунд. Вам также не разрешено использовать хеширование (или другие криптографические функции) в вашей программе
Затем вы предоставляете зашифрованную версию исходного кода и требуемый вывод. Вы можете зашифровать свой исходный код так, как вам нравится, если символы сохраняются.
Ваша оценка - самая короткая из представленных вами программ, которая не была взломана. По истечении одной недели непроверенная отправка становится иммунной. Чтобы заявить об этом иммунитете, вы должны отредактировать свой ответ, чтобы показать правильный ответ. (Пояснение: пока вы не откроете ответ, вы не застрахованы и все еще можете взломать.) Побеждает самый низкий балл.
Простой пример полицейских ответов
Perl, 20
ellir"lnto Wo d";prH
Hello World
Или же...
Perl, 15
*3i)xp3rn3*x3t(
272727
Правила Грабителя
Грабители будут публиковать свои попытки взлома в качестве ответов в отдельной теме, расположенной здесь .
У вас есть одна попытка взломать каждую заявку. Ваша попытка взлома будет расшифрованной версией исходного кода. Если ваше предположение соответствует описанию (те же символы, выходные данные и, конечно, язык), и вы - первое правильное предположение, тогда вы выигрываете очко. Важно отметить, что ваша программа не должна точно соответствовать оригиналу, просто использовать те же символы и иметь одинаковую функциональность. Это означает, что может быть более одного правильного ответа.
Грабитель с наибольшим количеством очков (успешных трещин) побеждает.
Простой пример Ответы грабителя
Ваша программа была
print "Hello World";
. (Хотяprint"Hello World" ;
мог бы и сработать.)Ваша программа была
print(3**3x3)x3
Безопасные представления
- ASP / ASP.Net, 14 (Джейми Баркер)
- Befunge-98, 15 (FireFly)
- GolfScript, 16 (Питер Тейлор)
- CJam, 19 (DLosc)
- GolfScript, 20 (user23013)
- Perl, 21 (прим)
- Python, 23 (mbomb007)
- Руби, 27 (гистократ)
- SAS, 28 (ConMan)
- Руби, 29 (гистократ)
- Python, 30 (mbomb007)
- JavaScript, 31 (hsl)
- Руби, 33 (гистократ)
- Marbelous, 37 (es1024)
- Руби, 43 (гистократ)
- PHP, 44 (кенорб)
- Руби, 45 (гистократ)
- Marbelous, 45 (es1024)
- Питон 2, 45 (Эмиль)
- PHP, 46 (Исмаэль Мигель)
- Хаскелл, 48 (нооодл)
- Python, 51 (DLosc)
- Python, 60 (Sp3000)
- Питон 2, 62 (мутная рыба)
- JavaScript, 68 (Джейми Баркер)
- Mathematica, 73 (Arcinde)
- Хаскелл, 77 лет
- Питон, 90 (DLosc)
- C ++, 104 (user23013)
- ECMAScript 6, 116 (Mateon1)
- С ++ 11, 121 (es1024)
- Трава, 134 (user23013)
- PowerShell, 182 (Христофор)
Неразрешенные представления
В порядке времени размещения. Этот список любезно предоставлен многими пользователями.
- CoffeeScript, 96 (соктинпк)
- Python 3, 70 (Sp3000)
- TinyMUSH 3.1, 20 (Muqo)
- GolfScript, 32 (бета-распад)
- Python 2, 101 (Mateon1)
- Луа, 49 (Чиппер Никель)
- Питон, 61 (ималлетт)
- Java 6+, 218 (нхахтдх)
- CJam, 51 (Мартин Бюттнер)
- J, 22 (FireFly)
- Marbelous, 106 (es1024)
- Marbelous, 107 (es1024)
- JavaScript, 79 (FireFly)
- CJam, 47 (user23013)
- Rust, 118 + Clojure, 106 + другие (Vi.) - версия 2
- Marbelous, 144 (es1024)
- Python 2, 80 (MrWonderful)
- Perl, 53 (DLosc)
- Perl, 26 (primo)
- Математика, 31 (Arcinde)
- Marbelous, 144 (es1024)
- Ассамблея, 78 (крзыгож)
- J, 14 (алгоритмшарк)
- Java 8, 157 (TheBestOne)
Небольшой инструмент для проверки решений, предоставлено n̴̖̋h̷͉̃a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳
источник
Ответы:
Python 3, размер 74 ( треснувший )
Питон просто не был тем же самым после перевоспитания Большим братом.
Входные данные:
В конце строк 1 и 2 есть две новые строки.
Выход:
Обратите внимание, что каждый
True
в своей строке.источник
2+2==5
четвертое утверждение, пока я не обнаружил, что=
это слишком легко.Python 3, размер 12 ( треснувший )
Моя программа не выдает никаких ошибок.
источник
int
ненадолго.python
а затем введите свое решение в командной строке. Но это работает, если я положу свое решение в файл и введитеpython file
.CJam, размер 20 ( треснувший )
Код
Выход
источник
Python 2, размер 50
треснувший
Мы уже знаем ответ на вопрос, но что это за вопрос?
Код
Обратите внимание, что нет пробелов или переводов строки. Единственный пробельный символ - это один пробел после
print
.Выход
Я пытался сбалансировать длину и сложность кода, но меня не удивит, если я немного пропущу его. Надеюсь, этого хватит, по крайней мере, отбить грубую силу.
источник
Pyth - 71 треснувший
Код
Выход
* Изначально Джордж Лукас заставил Хана прервать C3-PO. **
** Он назвал это своей величайшей идеей со времен Джар-Джара.
Интересное примечание: несмотря на все изменения, через которые прошел Pyth, здесь все еще есть верный ответ!
оригинал
объяснение
обновленный
Извините за плохое форматирование объяснений, я не знаю, как использовать спойлеры: S (хотя @ Sp3000 сделал его немного лучше для вас)
Теперь вы можете запустить Pyth онлайн! Попробуй это здесь. Спасибо @isaacg :)
источник
<br>
CJam, размер 51 [БЕЗОПАСНО]
Код
Выход
Вы можете поиграть с ним в онлайн-переводчике .
Это должно быть более хрупким, чем кажется.
намек
Решение
источник
Befunge-98, размер 15 [SAFE]
Код
Выход
оригинал
источник
3312
,3300
и некоторые другие рядом3314
. Так близко ...GolfScript (16 байт) [БЕЗОПАСНЫЙ]
Ожидаемый результат:
Первоначальный источник:
источник
:
.Руби, 17 ( треснувший )
На этот раз очень коротко.
Выход:
источник
Python, 69 символов [ взломано grc ]
Яичница:
Выход:
Это просто безобидное развлечение :) Протестировано на CPython 2.7.8, 3.3.2 и, черт возьми, на PyPy3 2.3.1.
объяснение
источник
Python, размер 56 ( треснувший )
Код
for i in "iprint()".join(([2,3,7,0,9,chr((-7+732^70)])))
Выход
hi mom
источник
Python 3, 70 символов
Яичница:
Выход (длиной 99 символов):
Обновить
Прошла неделя, поэтому вместо того, чтобы публиковать ответ, вот подсказка:
источник
Пиф , 11
Выход:
источник
JavaScript, 94 взломан FireFly
Выход
оригинал
источник
alert
первую очередь, так как индексы так хорошо соответствовали нужным персонажам. Интересное совпадение.Syntax Error: Unexpected String
Руби, 38 - взломан Мартином Бюттнером
Выход:
Оригинал:
источник
print
иdowncase!
были красные селедки. Я ожидал ответа, чтобы использоватьputs
, не думал$><<
.Python 3, размер 16 ( треснувший )
Код:
Вывод (с новой строкой в конце):
источник
hello
были анаграммойimport
. ^^Perl - 47 ( взломано grc )
Код (там тоже один пробел)
Выход:
Вы можете запустить его онлайн здесь, и он работает под
strict
иwarnings
.источник
strict
иwarnings
дайте мне знать.Ruby, 33 - взломан пользователем23013
Выход:
Оригинал:
источник
puts
очевидно, это будет первое,.next
что нужно использовать , это еще одно ключевое слово, которое можно использовать, а остальное - какое-то колдовство с$
переменными ruby и созданием массива символов ... +1Python2, 132 символа
Вывод (с новой строки):
Обновленная версия, 96 символов
Ответ на оригинальную версию предложен
exec
вместоcompile
+eval
, поэтому вот упрощенная версия:Обновление: трещины
Полностью взломан Alex Van Liew и KennyTM . Оригинальные решения были (прокрутите вправо, чтобы показать спойлер):
источник
\n
литералы строк). С символами новой строки код может быть короче.x
s иc
s, чтобы я мог делать то, что я хочу сделать: PDon't count ones which exist. Count ones which do not exist
.Руби, 29 [безопасно]
Пытаясь понять, насколько коротким я могу стать в Руби, не взломавшись.
Код
Выход
оригинал
объяснение
источник
PHP, размер 49 [ взломано Мартином Бюттнером ]
Код
Выход
источник
MATLAB, 41 байт
Трещины на feersum
Выход
источник
Perl, 36 ← взломан grc
Код
Выход
Проверено здесь
источник
Haskell, 100 символов (неверный, слишком длинный вывод)
Код
Выход:
"\er\\e\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\"\\\\\\\\\\\\\"\\\\\\\
оригинал
источник
fix show
. Определенно непробиваемыйJ, 22 байта
Код
Выход (97 символов)
Я ожидаю, что это будет практически невозможно ...
источник
CJam, 32 байта ( взломан )
Зашифрованный источник
Выход
источник
Pyth - 35 - треснувший
В духе @ MartinBüttner:
Код
Выход
Попробуйте расшифровать его онлайн здесь.
источник
TinyMUSH 3.1 , 20
Яичница:
Выход:
источник
Python 3, длина 110 [ взломано grc ]
Scrambled (
\n
обозначает перевод строки)Выход:
Вот еще один забавный - не для того, чтобы быть трудным, а просто что-то необычное и загадочное. :)
объяснение
источник
Javascript, 29 - Трещины
Запустить в консоли браузера Chrome
Код
Выход
Оригинальный код
источник