The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Результаты 22 чемпионата по написанию запутанного кода на яз..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от opennews (??) on 06-Янв-14, 01:09 
Опубликованы (http://www.ioccc.org/years.html#2013) исходные тексты работ (http://www.ioccc.org/2013/whowon.html), победивших в двадцать втором конкурсе IOCCC (International Obfuscated C Code Contest), целью которого было  написание наиболее запутанного и трудноразбираемого кода на языке Си.


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


Лучшие работы:


-   Adrian Cable (http://ioccc.org/2013/cable3/) - эмулятор IBM PC, способный запустить MS DOS и такие программы, как Windows 3.0, Excel, MS Flight Simulator, AutoCAD, Lotus 1-2-3;

<center><a href="http://ioccc.org/2013/cable3/screenshot_flightsim4.png"... src="https://www.opennet.ru/opennews/pics_base/0_1388952034.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>

-  Christopher Mills (http://ioccc.org/2013/mills/) - HTTP-сервер, при открытии страницы отображающий 3D-часы;
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388954972.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></center>

-  Adrian Cable (http://ioccc.org/2013/cable2) - система распознавания текста;
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388955272.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></center>

-  Yves-Marie Morgan (http://ioccc.org/2013/morgan1) - графический (X11) симулятор солнечной системы, отображающий позиции 8 планет по заданной дате;

-  Don Yang (http://ioccc.org/2013/misaka/) - горизонтальное или вертикальное слияние файлов;
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388952946.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></center>

-  Yusuke Endoh (http://ioccc.org/2013/endoh1/) -  реализация   SKI-исчисления;
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388953431.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></center>

-  Qiming Hou (http://ioccc.org/2013/hou/) - система трассировки лучей;
<center><a href="http://ioccc.org/2013/hou/old_default.jpg"><img src="https://www.opennet.ru/opennews/pics_base/0_1388954094.jpg" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>

-  Arch Robison (http://ioccc.org/2013/robison/) - вычислитель произвольных арифметических выражений (например, echo '10*(20*(1+(9*5)))/3' | ./robison). Код оформлен в виде набора функций str* и memset;

-  Michael Birken (http://ioccc.org/2013/birken/) - игра в тетрис. Код оформлен в виде сцены игры в тетрис;
<center><a href="http://ioccc.org/2013/birken/triple0.gif"><img src="https://www.opennet.ru/opennews/pics_base/0_1388954332.gif" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>

-  Yusuke Endoh (http://ioccc.org/2013/endoh2/) - генератор JPEG-файла с изображением кода программы;
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388954553.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></center>

-  Yves-Marie Morgan (http://ioccc.org/2013/morgan2/) - игра в домино (X11 и ASCII);

-  Yusuke Endoh (http://ioccc.org/2013/endoh4/) - формирует 3D-представление многогранника на основе заданных вершин;


-  Лучшие однострочники:


-  Yusuke Endoh (http://ioccc.org/2013/endoh3/) - синтезатор музыки на основании нотной записи ABC (http://ru.wikipedia.org/wiki/ABC_%28%D0%BD�...) (размер программы 137 байт);

-  Adrian Cable (http://ioccc.org/2013/cable1/) - определяет к какой партии относится выбранный президент США (размер программы 88 байт);

-  J. David Lowe (http://ioccc.org/2013/dlowe/) - визуализация входных данных в форме графика (149 байт)
<center><img src="https://www.opennet.ru/opennews/pics_base/0_1388953237.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></center>


URL: http://developers.slashdot.org/story/14/01/04/2123236/source...
Новость: https://www.opennet.ru/opennews/art.shtml?num=38793

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +11 +/
Сообщение от Аноним (??) on 06-Янв-14, 01:09 
Однострочник на перл - чемпион на все времена! :)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

9. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +3 +/
Сообщение от Anonn on 06-Янв-14, 07:03 
Ларри Уолл в этом конкурсе неоднократно участвовал. И видно ведь, что не один perl может быть краток.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

46. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –1 +/
Сообщение от Grammar Nazi on 09-Янв-14, 08:09 
на Перле, ёптa
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +6 +/
Сообщение от Жорж on 06-Янв-14, 01:33 
Как это так эмулятор ibm pc в 4кб уложился? фантастика нафик.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +2 +/
Сообщение от pavlinux (ok) on 06-Янв-14, 01:59 
Там плюс 12 кило BIOS и 3.7 Makefile
А в Makefile есть вот такая фича

# Defines
DEFS=-DKB='(kb=read(H(8),r+1190,1))&&H(7)'

Как судьи пропустили такую подставу, нипанятна.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +1 +/
Сообщение от Аноним (??) on 06-Янв-14, 02:24 
А ты вставь этот дефайн в C файл, размер всё равно будет меньше 4096.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +18 +/
Сообщение от Аноним (??) on 06-Янв-14, 02:37 
> Как судьи пропустили такую подставу, нипанятна.

Obfuscation test PASSED!

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

21. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 06-Янв-14, 12:17 
/thread
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

22. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от xdbxd on 06-Янв-14, 12:46 
В однострочнике J. David Lowe, в makefile
CFLAGS= ${CWARN} ${CSTD} ${ARCH} ${OPT} ${LIBS} -include stdio.h -include stdlib.h -D'_(x)=strtof(b[x],0)'
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

24. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +2 +/
Сообщение от pavlinux (ok) on 06-Янв-14, 14:18 
Давайте устроим соревнование: кто больше кода в Makefile перенесёт. :)
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

41. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 08-Янв-14, 10:13 
Предлагаю решение для хранения данных:
Создаешь 100500 файлов. Нулевого размера. С именами в которых данные заколочены. Суммарный размер - ноль. Зато подчитав оглавление диры можно свои данные получить. Таким макаром чувак смог compression contest разок выиграть, "типа, сжав" данные :). Он честно спросил - можно ли более 1 файла. Ему сказали - можно. Ну он и сохранил данные в файлах 0-го размера :).
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

38. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от svlasov (ok) on 07-Янв-14, 14:13 
Читайте hint.text:

On UNIX-based systems we can get raw keystrokes using stty. However Windows has no stty. Therefore the Makefile includes a -D entry to define a “keyboard driver” KB which as it stands is suitable for UNIXes, but maybe not non-UNIX platforms.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

10. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +1 +/
Сообщение от Anonn on 06-Янв-14, 07:05 
Этому эмулятору вчера Alan Cox удивлялся.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

25. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от pavlinux (ok) on 06-Янв-14, 14:25 
>[оверквотинг удален]
> - Intel 8086/186 CPU
> - 1MB RAM
> - 8072A 3.5" floppy disk controller (1.44MB/720KB)
> - Fixed disk controller (supports a single hard drive up to 528MB)
> - Hercules graphics card with 720x348 2-color graphics (64KB video RAM), and CGA 80x25 16-color text mode support
> - 8253 programmable interval timer (PIT)
> - 8259 programmable interrupt controller (PIC)
> - 8042 keyboard controller with 83-key XT-style keyboard
> - MC146818 real-time clock
> - PC speaker

Это ж конфиг моего первого ПиСюка, РАМы правда было 768кб

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

4. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +3 +/
Сообщение от Okarin (ok) on 06-Янв-14, 02:04 
>misaka.c

AWWWWW!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от ano (??) on 06-Янв-14, 05:44 
cc misaka.c -o hcat && ./hcat misaka.c misaka.c > misaka2.c && cc misaka2.c -o vcat && ./vcat misaka.c misaka.c > misaka3.c && cc misaka3.c -o longcat && ./longcat misaka.c misaka.c > misaka4.c && cat misaka4.c
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

8. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –1 +/
Сообщение от Аноним (??) on 06-Янв-14, 06:31 
О-карин! Ня!
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

11. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от pkunk (ok) on 06-Янв-14, 08:06 
В прошлом году от него же Нярко была.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

12. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –1 +/
Сообщение от zed_0xff email on 06-Янв-14, 08:37 
последний скриншот (зеленый) - фотошоп!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от www2 (ok) on 06-Янв-14, 10:03 
Если посмотреть исходники, то можно увидеть, что там используются символы из Unicode.
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +3 +/
Сообщение от Аноним (??) on 06-Янв-14, 11:25 
>  последний скриншот (зеленый) - фотошоп!

Уникод еще и не такое позволяет.
Вот те фотошоп:
▒▒▒▄▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄▄
▒▒█▒░░░░▄▄▄▄▀░░░░░▒▀▀▄▄▄▒▒█
▒█▒░░░░░▄▀▀▄▄░░░░▒▄▄▄▒▒▒▒▒▒█
█▒▀▄▄▒░░██▄▄▄█░░▒██▄▄█▒▒▒▒▒▒█
█▒▒░▄▀▄▄▄▀░░░░░░▒▒█▒▒▒▒▒▒▒▒█
█▒░░█▄▄░░░░░█▀░░░░▀▄▒▒▄▀▀▀▄█
█▒░░▀█▄█▀▀▄░▀▀▀▀▄▄▄▀▒▒▒█▒▒█  
▒█▒░░░▀█▄▄█▀▀▀█▀▀▀█▀█▀██▒▒█  
▒▒█▒░░░░▀██▄▄▄█▄▄▄█▄██▒▒▒▒█▄
▒▒▒█▒░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒█
▒▒▒▒▀▀▀▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀▀

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

15. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +1 +/
Сообщение от Аноним (??) on 06-Янв-14, 11:25 
У меня давно сложилось ощущение, что половина программ в Линуксе писалась для этого чемпионата.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

16. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 06-Янв-14, 11:40 
> У меня давно сложилось ощущение, что половина программ в Линуксе писалась для
> этого чемпионата.

В винде и похуже бывает. Гуглить про "в общем какой-то козел стал гoвнистость" - там показано как программы пишут виндовые програмеры :)

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

18. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Fomalhaut on 06-Янв-14, 12:10 
Судя по тому, что нам на работе на заказ пишут (не кислые комплексы пачками за не менее некислые деньги) - виндовые проггеры зачастую их пишут в туалете в процессе дефекации с использованием соответствующей бумаги.
Зато как звучит название этих проггероФФ: сположные "системные интеграторы" и "разработчики систем SCADA/АСУТП"...
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

19. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Fomalhaut on 06-Янв-14, 12:11 
А по томе: просто великолепно! Весьма впечатлён.
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

20. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 06-Янв-14, 12:11 
А ты поищи упомянутый текстик. Там виндовые програмеры сделали из сей какой-то почти одинэс, только ругательный :)
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

17. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Admiral on 06-Янв-14, 12:08 
Очень круто :)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

23. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –5 +/
Сообщение от BratSinot (ok) on 06-Янв-14, 12:47 
И очередные программы из разряда "сделаем тупо ASCII-картинку!".
А
> HTTP-сервер, при открытии страницы отображающий 3D-часы;

вообще похоже POSIX использует.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

29. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +3 +/
Сообщение от МегаВова on 06-Янв-14, 15:08 
Штаа?
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

34. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 07-Янв-14, 04:44 
> И очередные программы из разряда "сделаем тупо ASCII-картинку!".

Попробуй сам так сделать - не забудь рассказать насколько это просто...

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

26. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –2 +/
Сообщение от Аноним (??) on 06-Янв-14, 14:36 
А разве все это не противоречит идеологии OpenSource
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

28. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +2 +/
Сообщение от Andrey Mitrofanov on 06-Янв-14, 14:59 
> А разве все это не противоречит идеологии OpenSource

Нет.

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

33. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +2 +/
Сообщение от Аноним (??) on 06-Янв-14, 23:24 
Идеологии - нет.
Идеалам - да.
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

27. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от metallic (ok) on 06-Янв-14, 14:42 
А на питоне слабо такое с форматированием выделывать? :D
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

30. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от guest (??) on 06-Янв-14, 15:10 
> А на питоне слабо такое с форматированием выделывать? :D

Питон сам за тебя всё выделывает.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

35. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +3 +/
Сообщение от Аноним (??) on 07-Янв-14, 04:46 
Питон - ЯП для быдлoкoдeров. А быдлoкодер должен вкалывать от забора и до обеда. Художества быдлoкoдерам не позволяются, это удел настоящих профи.
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

57. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от chorny (ok) on 11-Янв-14, 06:33 
не совсем то: http://docs.python.org/faq/programming#is-it-possible-to-wri...
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

31. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 06-Янв-14, 20:34 
Кто понял, где таблица в с президентами? Или ответ рандомно выбирается? :)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

49. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 13:05 
Если попытаться написать читаемый эквивалент, то выйдет следующее (я не проверял работоспособность!)

int main(int argc, char **argv)
{
    if ( (*(int*)argv[1] % 4796 % 275 % argc) == 0 ) /* argc == 4 */
        puts(argv[3]);
    else
        puts(argv[2]);
}

Первые четыре буквы имени президента приводятся к int (причем из-за Little Endian байты интерпретируются в обратном порядке: так, obama превратится в 0x6D61626F - 'mabo'). Дальше происходит какой-то фокус с остатками от деления. Кто поймет его - поймет смысл программы.

Имеет смысл посмотреть, как президенты распределены во времени были. Думаю дальше...

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

32. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –2 +/
Сообщение от Аноним (??) on 06-Янв-14, 21:48 
Кстати, у кого-нибудь есть ссылка на компактную шпаргалку по сабжу? (извиняюсь за офтопик)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

44. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  –2 +/
Сообщение от yantux email(??) on 08-Янв-14, 18:40 
Я думаю победили бывшие кодеры MS Windows, т.к. Майкрософт не жалеет раздавать исходники правительствам стран для сертификации структурами типа ФСБ.

Интересно, как они справятся с сертификацией подобного кода?

Такой код можно сертифицировать под требования FAA документ DO-178B ?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

45. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 06:58 
Господа, объясните, плиз, как работает однострочник с президентами. В Makefile вроде пусто.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

47. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Ann (??) on 09-Янв-14, 10:57 
>So how does a one line C source know so much?  Hint: it doesn't.
Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

50. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 16:00 
Там два магических числа в коде:) выбор нужного бита внутри кодового int-a - по первой букве фамилии
Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

51. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 17:20 
Не могли бы вы развернуть свою мысль? Что-то я сомневаюсь в вашем утверждении.
Ответить | Правка | ^ к родителю #50 | Наверх | Cообщить модератору

52. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Andrey Mitrofanov on 09-Янв-14, 17:37 
> Там два магических числа в коде:) выбор нужного бита внутри кодового int-a
> - по первой букве фамилии

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

---Куда делся ответ другого анонима с читаемым кодом?

Ответить | Правка | ^ к родителю #50 | Наверх | Cообщить модератору

53. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 19:49 
Никуда не делся, он чуть выше. Я просто решил отвечать на более раннюю просьбу объяснить.
Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

54. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 09-Янв-14, 19:54 
>> Там два магических числа в коде:) выбор нужного бита внутри кодового int-a
>> - по первой букве фамилии
> По четырём же байтам, а не по первой букве. Не "нужного бита",
> а спец.подобранные коэффициенты в типа-хэше -- для ограниченного множества вх.данных выдающие
> нужные ответы.
> ---Куда делся ответ другого анонима с читаемым кодом?

Да, очень похоже на хэш. Но все-таки интересно выяснить, как именно автор подобрал магические числа и почему их три. Должен же там быть какой-то метод! Есть у кого-нибудь догадки?

Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

55. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Andrey Mitrofanov on 09-Янв-14, 20:02 
> какой-то метод! Есть у кого-нибудь догадки?

Сначала нужен Гений, придумавший общую конструкцию. Или Художник, укравший оную.

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

Делов-то. Достаточно кудрявая функция, таблица из 51 или сколько их там президентов -- и вперёд по кочкам.

То есть грубо можно считать, что те 51 бит (да-нет, демократ-комунист) почти что забиты в коэфициенты.

Ответить | Правка | ^ к родителю #54 | Наверх | Cообщить модератору

56. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от Аноним (??) on 10-Янв-14, 15:27 
>решаем систему уравнений -- относительно коэффифиентов в данном случае.

Идея мне понятна. Но вот в данном конкретном случае я немного застрял. У меня получается, что количество переменных больше, чем количество уравнений в системе.

H % A % B % C = D <=> H - q1*A - q2*B - q3*C = D

Даже зная H (числа, получающиеся из четырех букв президента), получается, что частные q1, q2 и q3 в каждом уравнении свои независимые, а D может принимать значение либо 0 (знаем, что демократ) либо неопределенное "от 1 до C-1". Плюс ограничение на то, что все числа натуральные. Не думаю, что тут можно решить систему иначе, как тупым перебором.

Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

48. "Результаты 22 чемпионата по написанию запутанного кода на яз..."  +/
Сообщение от hizel (ok) on 09-Янв-14, 12:41 
Лопни мои глаза, но ведь на первом скриншоте fly!11адын
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру