Инвертировано из уникальности (нить полицейского)


23

Учитывая вывод программы полицейского ( o), byte-count ( n) и количество используемых уникальных bytes ( c), придумали соответствующий фрагмент кода длиной в nбайты с cуникальными байтами, который соответствует выводу полицейского o.


Это нить ментов . Опубликуйте решения, которые можно взломать здесь.

Разбойники нить находится здесь .


Копы должны публиковать такие решения:

#[Language], `n` Bytes, `c` Unique Bytes (c*n points) [Cracked](Link-To-Crack)

    [Output]

---

(Optional spoiler)

правила

  • Вы не можете принимать какие-либо входные данные для вашей программы.
  • Программа должна использовать как минимум 1 байт, но не может превышать 255 байт.
  • Сам вывод также ограничен 255 байтами.
  • Программа должна иметь согласованные выходные результаты при многократном выполнении.
  • Если ваша заявка не была взломана в течение 7 дней, вы можете пометить ее как «безопасную».
    • Помечая это как безопасное, опубликуйте предполагаемое решение и отметьте его как c*n.
    • Отметьте ответ как «безопасный», только если вы действительно хотите +15 за принятый ответ; веселее видеть, как долго ты можешь идти.

выигрыш

  • Не взломанный пост с наименьшим количеством c*nочков, выигрывает нить полицейского.
  • Это будет решено после 10 безопасных ответов или нескольких недель.

Предостережения

  • Если вы чувствуете себя дерзким, вы можете сообщить пользователю алгоритм, используя тег спойлера .

Uncracked Материалы:

fetch("https://api.stackexchange.com/2.2/questions/147635/answers?order=desc&sort=activity&site=codegolf&filter=!.Fjs-H6J36vlFcdkRGfButLhYEngU&key=kAc8QIHB*IqJDUFcjEF1KA((&pagesize=100").then(x=>x.json()).then(data=>{var res = data.items.filter(i=>!/^#.*cracked/im.test(i.body_markdown)).map(x=>{const matched = /^ ?#{1,3} ?(?:(?:(?:\[|<a href ?= ?".*?">)([^\]]+)(?:\]|<\/a>)(?:[\(\[][a-z0-9/:\.]+[\]\)])?)|([^, ]+)).*[^\d](\d+) ?\[?(?:.*(?:byte|block|codel)s?)(?:\](?:\(.+\))?)? ?(?:\(?(?!no[nt][ -]competing)\)?)?/gim.exec(x.body_markdown);if(!matched){return;}return {link: x.link, lang: matched[1] || matched[2], owner: x.owner}}).filter(Boolean).reverse().forEach(ans=>{var tr = document.createElement("tr");var add = (lang, link)=>{var td = document.createElement("td");var a = document.createElement("a");a.innerHTML = lang;a.href = link;td.appendChild(a);tr.appendChild(td);};add(ans.lang, ans.link);add(ans.owner.display_name, ans.owner.link);document.querySelector("tbody").appendChild(tr);});});
<html><body><h1>Uncracked Submissions</h1><table><thead><tr><th>Language</th><th>Author</th></tr></thead><tbody></tbody></table></body></html>


1
Разрешены ли функции? (При условии, что они возвращают строку, я полагаю.)
Арно

1
@cairdcoinheringaahing. ОП сказал: «Программа должна иметь согласованные выходные результаты при многократном выполнении».

5
Просто предложение для будущих CnR: проблемы, когда пользователь может выбрать произвольный фиксированный вывод, довольно проблематичны для CnR, потому что люди могут в основном разбивать свою клавиатуру (за исключением ограничений синтаксиса) и публиковать результат, потому что копу не нужно понимать, что его Программа на самом деле делает. В противном случае, это отличная идея. :)
Мартин Эндер

4
@EriktheOutgolfer Как я уже сказал, «Запрет синтаксических ограничений». Дело не в том, что вы фактически публикуете случайный поток символов, а в случайной действительной программе, которую вам не нужно понимать. И особенно во многих esolangs, очень легко написать программу, которая выводит приличное количество случайного мусора без необходимости понимать, что делает эта программа.
Мартин Эндер

1
Учитывая, что на этот вопрос уже есть более 30 ответов, я предлагаю добавить фрагмент кода, в котором перечислены непроверенные материалы, как в этом посте.

Ответы:


11

Haskell , 173 байта, 8 уникальных, 1384 балла, сейф

"[tag:reverse_engineering]"

Похоже, что этот ответ хочет предоставить соответствующий тег для вопроса, используя только 8 различных байтов.

Как обычно, ваше решение должно работать, вставив его в блок кода на TIO: попробуйте онлайн!


Решение

'[':___':_'':_':':':__':__:__'':__:__':____:__:'_':__:___:_':_'_:___:__:__:__':_'_:___:_':']':[]
_:_:_'':_:_:_:__:_:_':_:_'_:_:_:_:_:___:_:_:_:__':____:___':_:__'':_=['_'..]

Да, это действительный код на Haskell: попробуйте онлайн!

Как это работает

Подчеркивание _используется в качестве символа подстановки в сопоставлении с образцом Хаскелла. 'используется для символов, например 'a'. Тем не менее, оба _и 'являются также частью разрешенных символов для имен идентификаторов (В некоторых ограничениях, например, 'не может произойти в начале имени.). Поэтому __, _', _'_, _''и так далее все действительные имена идентификаторов. Используя более описательные имена, приведенный выше код становится

'[':t:a:g:':':r:e:v:e:r:s:e:'_':e:n:g:i:n:e:e:r:i:n:g:']':[]
_:_:a:_:_:_:e:_:g:_:i:_:_:_:_:n:_:_:_:r:s:t:_:v:_=['_'..]

Первая строка возвращает строку, "[tag:reverse_engineering]"если каждая переменная назначена правильному символу. Это назначение достигается во второй строке: ['_'..]выдает строку "_`abcdefghijklmnopqrstuvwxyz{|}~ ... ", которая сопоставляется с шаблоном, _:_:a:_:_:_:e:_:g:_:i:_:_:_:_:n:_:_:_:r:s:t:_:v:_чтобы получить желаемое назначение a='a', e='e'и так далее.


10

Brain-Flak, всего 62 байта, 6 уникальных, 372 очка, Cracked

Вот ваш вывод:

10993592

В этом номере есть что-то особенное, но его нет в OEIS ;)

Если вы думаете об использовании компьютерного инструмента для решения этой проблемы, вам не повезло, целочисленный гольфист получает 110 байтов для этого числа:

(((((((((((((((((((((()()()()){}){}){}){({}[()])}{}()()){})){}{}())){}{})){}{}){}){}){}())){}{}){}()){}){}){})

Попробуйте онлайн!

Тебе придется сделать это вручную.


подсказки

Вот несколько советов, я покажу более полезные советы со временем. Удачи!

10993592 - это 97-й член последовательности в OEIS, но он не отображается, поскольку включены только несколько терминов.


Мое решение использует 3 цикла, но они не вложены в 3 уровня.


Мое решение

((((((()()()){}){}){}){}){}())(({(({})[()])}{}){{({}[()])}{}})

Попробуйте онлайн!

Это использует один из моих любимых трюков, код

(({(({})[()])}{}){{({}[()])}{}})

вычисляет n-й член A090809 . Полное представление просто дополняет код 97 до большого числа.


Я не могу не заметить, что 10, 993 и 592 присутствуют в PI в десятичном диапазоне 43-63 ... 592 также присутствует в первых 10. Я понятия не имею, может ли Brain-Flak достичь этого за 62 байта, хотя ...
Yytsi

Режим ASCII или числовой режим?
user202729

@ user202729 Я использовал числовой режим, так что я бы подумал, что грабителям тоже нужно это использовать. Я был бы серьезно удивлен, если бы это было возможно в режиме ASCII, основанном на предыдущих попытках, так что это, вероятно, не стоит преследовать.
Пшеничный волшебник

1
@ThePirateBay Я не думаю, «к какой последовательности OEIS он принадлежит», всегда полезная информация, подумайте, насколько эзотерична мозговая атака. Это также элемент A000027, но это наблюдение также бесполезно.
user202729


7

MATL , 6 байтов × 3 уникальных = 18 баллов. Трещины

1+0i 0+1i -1+0i 0-1i

2
Блин, арифметика с плавающей точкой!
Стьюи Гриффин

2
@StewieGriffin Я вижу, вы веселитесь :-D
Луис Мендо

Кстати, i.^(0:3)не дает неточностей с плавающей запятой в Octave, но J4:q^дает в MATL ...
Стьюи Гриффин

@StewieGriffin Разница возникает из-за использования функции отображения в MATL num2str(..., '%.15g '). Смотрите, например, здесь . Но этого не происходит для MATL, работающего на Matlab. Вывод num2str
Луис Мендо

Во всяком случае, это не влияет на этот ответ. Указанный вывод может быть получен при работе MATL на Matlab и Octave; и в частности на TIO
Луис Мендо

6

Желе , 7 байт × 6 уникальных = 42 балла, трещины

843606888284160000

Попробуйте онлайн!

8! × 16! ¤



О, ха-ха, я взломал его с нулем в конце по ошибке!
Джонатан Аллан

@JonathanAllan Ну, это легко заменить , например. Теперь уже слишком поздно, я думаю ...
Эрик Outgolfer

Ну, я взломал ту же проблему, с ненужным препятствием: р
Джонатан Аллан

@JonathanAllan Попробуй взломать мой новый, если хочешь!
Эрик Outgolfer

6

Malbolge , 15 байтов, 13 уникальных, оценка 195. Безопасно!

Выходы:

PPCG

Сейф! Предполагаемый код:

(&a`#""7[}4XE70

Попробуйте онлайн!


Я уверен в процедуре взлома этого путем создания грубой силой программы, которая выводит P, и построения поверх него еще одного P и т. Д. Получение этого значения до 15, вероятно, использует преимущества двух P вместе.
Джошуа

Мальболге это зло. Слишком сложно писать программы в Malbolge, не говоря уже о том, чтобы взломать представление.
user202729

6

JavaScript (ES8), 103 байта, 42 уникальных (4326 баллов) [БЕЗОПАСНЫХ]

Выходной hexdump:

3E 6E 6D 08 33 7A 22 7D 6C 37 7B 36 61 7B 65 71 3A 37 26 7E 7B 7B 38 7B 7D 69 6A 2B 3D 70 74 07 6F 6C 66 7E 1A 2A 3C 37 2D 36 31 38 6A 78 33 62 30 1E 34 3D 66 7B 37 10 26 6A 6A 32 27 6F 2E 33 1B 30 1E 76 27 27 7E 18 6F 68 26 2D 76 6A 6D 6D 2F 2E 0A 3F 17 7D 2B 73 7A 17 38 62 3A 29 20 0C 61 24 21 27 10 2B 20 63 71 72 17 5D 5F 12 5B 02 14 59 17 5A 11 1E 1D 10 16 07 5F 5F 58 58 4B 18 48 4B 04 5F 06 12 16 14 4D 45 5D 5D 16 3A 1C 1D 11 16 1F 51 59 4E 4B 4C 3D 16 1C 0F 2E 46 0E 08 4B 4B 13 45 21 10 06 0E 11 3F 51 57 3E 00 54 5F 49 05 0E 07 5A 51 3E 08 01 25 10 0B 51 36 43 0B 34 1A 43 47 04 46 0E 55 05 00 06 01 40 33 0F 00 53 36 42 42 45 5F 3D 3A 38 74 39 74 71 71 2C 7C 60 38 38 76 63 44 7F 64 28 66 3E 24 7A 66 57 79 24 3C 3C 21 6A 36 27 30 77 7E 36 7E 2A 3E 29

Я знаю, что счет необычайно большой, но в любом случае я думаю, что этот может быть интересным для взлома. Программа представляет собой функцию, которая возвращает строку (просто, чтобы избежать путаницы, это не REPL).

Полагаю, это не должно быть слишком сложно, все связано с поиском шаблона.

Решение

Кажется, что это было тяжелее, чем я думал, согласно тому факту, что никто не взломал это. Я полагал, что может быть несколько решений, которые легко создать. В любом случае, вот намеченное решение:

е = т => [... т = е + F + F] .map ((а, р) => р + 1 & 256 '': String.fromCharCode ((р & 4 м [р ^ 17]: а) .charCodeAt^83^p*.3)).join

По какой-то причине он не отображается должным образом как фрагмент кода. Вот ссылка TIO .


Помечено как безопасное?
user202729

@ user202729. Я согласен, возможно, головоломка оказалась сложнее, чем я думал, поэтому теперь она помечена как безопасная.

5

Октава, 13 байт, 5 уникальных символов, оценка: 65. Безопасно!

20085918935040000

Этот не должен быть слишком сложным. Если вы не хотите сразу переходить к самым сложным, это может быть хорошим первым испытанием :)

Примечание. Когда я прочитал вопрос, я подумал: «Выведите число, а не строку». Вывод выглядит так на TIO:

ans =    2.0086e+16

И будет выглядеть так, если у вас есть format long

ans =  20085918935040000

или вы можете напечатать это так:

printf('%i',ans)
20085918935040000

Что у меня было, и объяснение:

prod prodprod

Просто как тот. знак равно

Разъяснение:

Обычно вы пишете это как:, prod('prodprod')но Octave обрабатывает все, что идет после имени функции, как строку (массив символов). Они неявно преобразуются в их значения ASCII и умножаются вместе.



4

Java 8 (полная программа), 97 байт, 34 уникальных, 3298 баллов ( взломано @RobertoGraham )

Выход:

1.4241570377303032

ПРИМЕЧАНИЕ. Это полная программа. Если ()->вместо этого разрешены функции в форме :

Java 8 (лямбда-функция), 40 байт, 18 уникальных, 720 точек ( Cracked by @ user202729 )

Это, наверное, довольно сложно, но что угодно .. Это не значит, что Java все равно выиграет с таким количеством очков.


подсказки:

Предполагаемый код не содержит ни одинарных, ни двойных кавычек. (Функция возвращает значение типа double.)
Предполагаемый код не содержит цифр ( 0-9).


Предполагаемое решение:

Довольно забавно (и впечатляюще), как обе указанные трещины совершенно отличаются от того, что я имел в виду, но вводная часть для обоих крекеров!

Функция: Полная программа:()->Math.log(Math.hypot(Math.PI,Math.E))
interface M{static void main(String[]a){System.out.print(Math.log(Math.hypot(Math.PI,Math.E)));}}


Почему у вас две программы, но только один выход?
Okx

1
@Okx Потому что второе - это функция.
Эрик Outgolfer

@Okx Как сказал Эрик , потому что они оба одинаковы. Верх как программа, низ как функция. Я все еще жду ответа на комментарий Арно, чтобы я мог удалить один из двух ...
Кевин Круйссен

Так близко, прямая печать строки - правильная длина, но двух уникальных чисел слишком много :-) - фактически, 1, если вы не
Кевин


4

MATL, 11 байтов, 10 уникальных, 110 баллов. СЕЙФ!

Выход:

10803850202590

Просто, чтобы «помочь» вам одним из способов:

Это продукт:

[2, 5, 29, 89, 397, 499, 2113]

и это на единицу меньше, чем на 372884884433первом.


И вот несколько реальных советов. Если через несколько часов он не треснет, я найду решение.

  1. - Там qесть

  2. - Там Bесть

  3. - Там ^есть

  4. - Там hесть

  5. - Там tесть

Настоящий код:

9K ^ ZqsBthXB

Объяснение:

Нажмите две цифры, 9и K, и возвести в степень. Создайте список всех простых чисел ниже этого числа и суммируйте их. Преобразовать в двоичный файл, продублировать двоичный вектор и объединить его с самим собой. Преобразование обратно в десятичное и вывод неявно.


3

Haskell , 10 байт, 3 уникальных, 30 баллов, взломан

2416508937

Хорошее число, которое содержит каждую цифру, хотя используются только 3 уникальных байта.

Предполагаемое решение работает путем замены части кода в следующей ссылке TIO: попробуйте онлайн!



@ H.PWiz Я не ожидал, что это продлится долго, но, тем не менее, это было очень быстро. Я ожидал (или, по крайней мере, надеялся), что грабители сначала попробуют арифметические решения.
Лайкони

3

Haskell , 29 байтов, 15 уникальных байтов, 435 точек, трещины

"33333333333333333333333333333333333333333333334333333333333333333333333333"

Это строка, содержащая 373 раза, и один подлый 4.

Предполагаемое решение работает путем замены части кода в следующей ссылке TIO: попробуйте онлайн!

Изменить: H.PWiz обнаружил действительный трещины (который может быть даже гольф-до 28 байт), но не предполагаемое решение.

подсказки:

Арифметика не нужна. Существует решение с одним выражением.




3

взрываться , 9 байт, 4 уникальных, 36 очков

Выход:

22k2Dk}D}

Обратите внимание, что документация не полностью совпадает с реализацией для этого языка - я написал это однажды и с тех пор не затрагивал ее, поэтому любые ошибки в реализации, которые могут существовать, теперь определенно являются функциями.

Кроме того, я не думаю, что этот язык завершен по Тьюрингу, так что вы, вероятно, можете использовать его грубо, но это скучно.

Я дам вам значительную награду, если вы сможете автоматизировать обратный инжиниринг в оптимально короткий код Explode.


Оценка вашего кода 36 правильно? Результат также набрал бы 36 очков, так что я просто уверен, что это не ошибка. :)
Стьюи Гриффин

@StewieGriffin, да, потому что, когда я впервые прочитал вопрос, я неправильно его прочитал и подумал, что код должен иметь ту же длину, что и вывод.
Стивен

Насколько коротким должен быть «код для взрыва в гольфе»?
user202729

@ user202729 извините, я должен был объяснить - оптимально короткий код Explode, так как он полностью детерминирован
Стивен

Но проблема в том, что люди могут написать код грубой силы, чтобы найти результат «в теории», но на практике это нецелесообразно.
user202729


2

Pyth, 7 байт, 6 уникальных, 7 * 6 = 42 общего балла

312069475503262125385169244603150327250717758754411025379995130624544231547913731661607993843298516888546865336571981925596

Проверьте поток подсказок Pyth для вдохновения;)


2

Желе , 3 байта × 3 уникальных = 9 баллов, трещины

263409560461970212832400

Попробуйте онлайн!

Еще одна попытка желе, на этот раз более сложная, я надеюсь.

ȷc⁵



@JonathanAllan С моим намеченным решением на этот раз: p Я думаю, это было слишком просто, верно? Было очевидно только 2763520 возможных решений ... и, по иронии судьбы, вы используете ту же функцию для вычисления этого числа, а также числа, которое будет взломано.
Эрик Outgolfer


2

Excel, 22 байта, 16 уникальных, 352 балла, Cracked

หนึ่งล้านห้าแสนสามหมื่นสองพันสี่ร้อยเก้าสิบห้าล้านห้าแสนสี่หมื่นแปดร้อยหกสิบห้าล้านแปดแสนเก้าหมื่นล้านล้านล้านล้านล้านล้านบาทถ้วน

Это может быть не очень сложно взломать, но я использую функцию, которую иначе никогда не смогу использовать. Кроме того, счет ничего не выиграет, если не будут взломаны многие другие.


трещины . Вероятно, не ваш оригинальный код, но он работает.
Витагор


2

Желе , 8 байт * 6 уникальных = 48 ( треснувший )

241975308641975308641975308641975308641975308641926913580246913580246913580246913580246913580246916

Вы можете попытаться взломать это здесь .

Предполагаемое решение: 7ẋ²Ḍ²ẋ4S



@JonathanAllan Ваш трек недействителен, извините (он не печатает правильный результат). Вы можете увидеть разницу здесь
Mr. Xcoder

@JonathanAllan Хех, пытался решить еще одну задачу в то же время (посмотрите на аргументы!: P)
г-н Xcoder

1
@JonathanAllan Ницца, я добавил решение в своем ответе тоже: D
Мистер Xcoder

2

Haskell , 30 байт, 17 уникальных, 510 точек, взломан

"6666666444444455666666666566555533333334333333333"

Предполагаемое решение работает путем замены части кода в следующей ссылке TIO: попробуйте онлайн!

Это использует тот же подход, что и мой предыдущий ответ , который был взломан с использованием другого подхода.

Некоторые намеки:

Арифметика не нужна. У меня есть решение с одним выражением.




2

Желе , 8 байт , 2 уникальных, 8 × 2 = 16 баллов - безопасно!

-4.408500694095235e-05

(Есть только 8 355 840 возможных таких программ, поэтому я думаю, что они должны быть взломаны.)

Приступайте к работе онлайн!

Как?

⁽⁽°°°°°°
⁽⁽°является базой 250 букв, уступающих в -27221
°радианах в градусы. Применяя это пять раз:
-475.09607568537643
-8.291990784013993
-0.1447225407260702
-0.0025258848375215096
-4.408500694095235e-05


Ницца! Первоначально я думаю, что некоторые двухбайтовые могут быть связаны здесь, но затем я отклонил это. Я также рассмотрел °, но не думал и думал, что вы должны придерживаться, начиная с 0.
user202729

@ user202729 отличается от них , они никак не связаны (за исключением того, что они потребляют два следующих символа).
Эрик Outgolfer

@EriktheOutgolfer Извините, я просто неправильно набрал символы. Я имел в виду .
user202729

2

Желе , 4 байта , 4 уникальных, 4 × 4 = 16 баллов - безопасно!

121713205122350539153771498803599196214022517709999123476340843193655114000078051089267404501704293755399249186132786797198080437408108773592830098754467315464894774875031495160099382422748898046431945143395996374011431649446848855993397955116462522798880

Обратите внимание, что длина вывода составляет 255 байт, прямо на границе.

Да, тот же счет, что и моей другой (пока не взломанной) записи Jelly .

Приступайте к работе онлайн!

Как?

7ÆĊ⁺
7дословный семь
ÆĊПолучает п - го числа каталонского 7 - й каталонском номер 429

повторяет предыдущий атом 429 - го числа каталонского .
121713205122350539153771498803599196214022517709999123476340843193655114000078051089267404501704293755399249186132786797198080437408108773592830098754467315464894774875031495160099382422748898046431945143395996374011431649446848855993397955116462522798880



72 байта немного длиннее, да. Вы можете удалить пробелы (62). Также вы можете использовать векторизацию rмежду двумя списками индексов кодовых страниц и объединить их с другим списком индексов кодовых страниц, чтобы уменьшить его до 35 байт , но там также есть повторяющиеся байты и 35 >> 4 ... удачи!
Джонатан Аллан

2

C (два дополнительных компьютера, sizeof (int) = 4), 76 байтов и 35 уникальных байтов для оценки 2660, Безопасный

Выход:

10542949672924294967287429496729029742949672954294967287429496728808914294967289429496728742949672946944294967291429496728742949672914964294967294429496728742949672891980429496728842949672874294967295792 

длиной 203 байта.

#include <math.h>
main () {for (int
i = 0; i <40; i ++) printf ("% u", (int) (cos (i) * 10));}

Без #include не сработает


Можем ли мы использовать некоторые специфичные для компилятора функции, как в gcc?

1
@ThePirateBay: я не сделал.
Джошуа

1
Я нашел интересный подход, но я не мог сыграть в гольф последний байт, поэтому я просто разместил его здесь. main(i){for(;42>i;printf("%u","eirwtlegowvnfemuwphejsno"[abs(24-i++)]-'n'));}
Колера Су

@ColeraSu Вероятно, вы можете переключиться с нижнего регистра на верхний и изменить его 'N'на 78(код символа N).
user202729

@ user202729, но это не соответствует ограничению в 35 уникальных байтов.
Колера Су

2

CJam, 15 байтов * 10 уникальных = 150 баллов

453630781352162854505467929721140132016201833205823402832306035643819420004950

Плохая оценка, но, надеюсь, будет трудно взломать.

Примечание: на данный момент я забыл, каков ответ. Поэтому я буду держать его открытым до тех пор, пока я или кто-либо еще не смогу его взломать.


Двойной ответ: P помечен для удаления
Кристофер

@ Christopher2EZ4RTZ Что ты имеешь в виду? Это два отдельных ответа с одинаковой разбивкой баллов, но с разными результатами.
Esolanging Fruit

Ух ты мой плохой. XD
Кристофер

Ахаха ... Вы, сэр, должны быть полицейским, который через 2 дня после выхода на пенсию забывает такой ответ: P
Волшебная осьминог Урна

@MagicOctopusUrn Теперь я ушел на пенсию, и меня это больше не интересует ...
Esolanging Fruit

2

CJam, 15 байтов * 10 уникальных = 150 баллов

355605126761554652609272416635107412217265861355621217687464016216276447790261274709847680

Примечание: на данный момент я забыл, каков ответ. Поэтому я буду держать его открытым до тех пор, пока я или кто-либо еще не смогу его взломать.


2

Japt , 5 байтов, 5 уникальных байтов (25 баллов) ( взломано Scrooble)

Выход: 3628801



@ Scrooble, не предполагаемое решение, но красиво сделано. Будет обновляться как взломанный, когда я вернусь к компьютеру. Я думаю, что теперь 4-байтовая версия, которую я имел, могла бы быть немного хитрее, но может опубликовать ее.
Лохматый

Каково было намеченное решение?
Хулдраесет на'Барья

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.