Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 58 | 3 | 9
Назад Вниз Каталог Обновить

Аноним 26/06/17 Пнд 22:28:10  155961377  
be08ab83c7.jpg (61Кб, 600x400)
Суп борщ. ИТТ призывается математик кун и прогроммизд кун (js, html, php, python и т.д не ЯП).

Значит тема не нова - сжимаем данные без потерь до 0 байт.
Попутно думаем новый способ, как сделать из 4х байт 3.

Я бы рад порадоваться успехами, но мой алгоритм имеет охуенный изъян. Изложу в крации:
Берём 4 байта, в которые заложено число 65835, в шестнадцатеричной системе (не переводил) примерно 0hfffffde5.
1 что делаем - определяем 256 в какой степени помещается в число, очевидно, что 256^2 = 65536, отнимаем его.
65835-65536=329.
2 что делаем - определяем множитель числа 256, помещающегося в остаток и отнимаем его. Очевидно 1 * 256=256.
329-256=64.

В итоге что получается , что число 65835, занимающее 4 байта, можно закодировать в значения для 3х байт, как 2;1;64.

Я бы рад считать это winом, но реальность суровая штука. Числа небольшой величины без проблем кодируются и декодируются обратно. По сути неограниченное количество данных, значения в которых для 4 байт не превышают определённый порог, можно сжимать вплоть до 3х байт. Например если бы мы имели гигабайт чисел в диапазоне от 0 до 65536, можно было бы получив 3 байта стартовых и количество шагов кодирования, декодировать исходные данные обратно переслав значения без регистрации через смс.
Хуйня в том, что на числе например ~15млн, 1 байта уже не хватает чтобы множителем или иным образом кодировать остаток.

Вопрос к математикам - как обойти это препятствие?
Аноним 26/06/17 Пнд 22:30:14  155961491
бамп
Аноним 26/06/17 Пнд 22:30:33  155961515
бамп
Аноним 26/06/17 Пнд 22:30:49  155961531
бамп
Аноним 26/06/17 Пнд 22:31:05  155961547
бамп
Аноним 26/06/17 Пнд 22:31:22  155961564
бамп
Аноним 26/06/17 Пнд 22:31:42  155961586
бамп
Аноним 26/06/17 Пнд 22:32:01  155961605
бамп
Аноним 26/06/17 Пнд 22:32:56  155961666
бамп
Аноним 26/06/17 Пнд 22:33:13  155961681
бамп
Аноним 26/06/17 Пнд 22:33:33  155961701
бамп
Аноним 26/06/17 Пнд 22:34:31  155961766
бамп
Аноним 26/06/17 Пнд 22:34:55  155961784
бамп
Аноним 26/06/17 Пнд 22:35:17  155961816
бамп
Аноним 26/06/17 Пнд 22:35:40  155961844
бамп
Аноним 26/06/17 Пнд 22:36:06  155961865
бамп
Аноним 26/06/17 Пнд 22:36:54  155961913
>>155961377 (OP)
Чем тебе питон не угодил? Сажи
Аноним 26/06/17 Пнд 22:37:15  155961941
>>155961913
Питоношкольнику неприятно
Аноним 26/06/17 Пнд 22:37:45  155961968
бамп
Аноним 26/06/17 Пнд 22:38:10  155961995
бамп
Аноним 26/06/17 Пнд 22:38:39  155962028
бамп
Аноним 26/06/17 Пнд 22:38:59  155962046
бамп
Аноним 26/06/17 Пнд 22:39:17  155962064
бамп
Аноним 26/06/17 Пнд 22:39:35  155962080
бамп
Аноним 26/06/17 Пнд 22:40:22  155962133
бамп5
Аноним 26/06/17 Пнд 22:40:58  155962172
бамп5
Аноним 26/06/17 Пнд 22:41:18  155962195
бамп
Аноним 26/06/17 Пнд 22:42:18  155962253
бамп
Аноним 26/06/17 Пнд 22:42:49  155962287
>>155961377 (OP)
Ебать дебил.
Никак, блядь, не обойти это препятствие. В трех байтах помещается в двести с хуем раз меньше значений, чем в четырех.
Аноним 26/06/17 Пнд 22:42:56  155962293
бамп
Аноним 26/06/17 Пнд 22:43:31  155962337
бамп
Аноним 26/06/17 Пнд 22:44:36  155962402
>>155961941
Ой вей, тут почти вся наука и хайлоад на питоне написаны
Аноним 26/06/17 Пнд 22:45:05  155962427
>>155962287
в 256 если быть точным, петушок.
Аноним 26/06/17 Пнд 22:45:26  155962454
>>155962402
Угу, угу.
Аноним 26/06/17 Пнд 22:45:50  155962482
>>155961377 (OP)
Лол.
Давай посчитаем сколько чисел можно закодировать тремя байтами. Одним байтом ты можешь закодировать 256 чисел. Тогда всего 256 256 256 = 16777216 = 2 ^ 24. Таким образом, ты не сможешь закодировать 4 байта.
покормил
Аноним 26/06/17 Пнд 22:45:54  155962491
бамп
Аноним 26/06/17 Пнд 22:47:51  155962613
>>155962482
4 полных байта кодируются как 256^4, при этом, если мы знаем, что возводим в степень 256, то остаётся лишь сохранить степень.
Аноним 26/06/17 Пнд 22:48:00  155962621
>>155962482
> проебал знаки умножения
Аноним 26/06/17 Пнд 22:48:10  155962633
>>155961377 (OP)
> Хуйня в том, что на числе например ~15млн, 1 байта уже не хватает чтобы множителем или иным образом кодировать остаток.
Какое совпадение! Как раз ~15млн различных чисел 16777216, если быть точным и помещается в 3 байта нормальным способом!
покормил
Аноним 26/06/17 Пнд 22:49:42  155962720
>>155962613
что возводим в степень 256?
Аноним 26/06/17 Пнд 22:49:47  155962726
>>155962633
Тут дело не в том, что помещаются значения, а в том, как их поместить в 3 байта если те же ~15 занимают 4 единообразным способом со всеми остальными числами.
Аноним 26/06/17 Пнд 22:49:48  155962727
>>155961377 (OP)
Поздравляю, ты изобрел арифметическое кодирование.
А теперь иди про энтропию почитай.

мимо погромизд тред не читал
Аноним 26/06/17 Пнд 22:50:09  155962743
>>155962720
2 же
Аноним 26/06/17 Пнд 22:52:09  155962859
image.png (248Кб, 604x453)
Аноним 26/06/17 Пнд 22:52:57  155962906
Возможно есть смысл в некоей перестановке байт, вроде добавления лишних байт с нулевыми значениями, чтобы уменьшить диапазон значений в каждых 4 байтах.
Аноним 26/06/17 Пнд 22:55:09  155963028
После подобной хуйни байты уже не будут превышать порогового значения и смогут быть сжаты неограниченное количество раз.
Аноним 26/06/17 Пнд 22:55:48  155963061
Хуйни не неси.
Аноним 26/06/17 Пнд 22:55:56  155963072
Например:
0xff
0xff
0xff

0xf
0x0
0xf
0x0
0xf
Аноним 26/06/17 Пнд 22:56:45  155963117
>>155963061
Нихуясе ты выражаешься!
Аноним 26/06/17 Пнд 22:56:56  155963131
оп перетолстил
Аноним 26/06/17 Пнд 22:57:41  155963165
>>155963131
забыл
Аноним 26/06/17 Пнд 23:02:36  155963471
>>155961377 (OP)
Да это хуйня твой метод, у меня лучше. Любая последовательность чисел содержится в числе пи, соответственно любую информацию можно закодировать двумя числами - номер знака с которого начинается последовательность и ее длинна.
Аноним 26/06/17 Пнд 23:03:00  155963488
Это значит берём ~15 млн
0xffffff00

делим на байты
0xff 0xff 0xff 0x00

Дополняем нулевыми байтами(16 байт)
0x00 0x00 0x00 0xff
0x00 0x00 0x00 0xff
0x00 0x00 0x00 0xff
0x00 0x00 0x00 0x00

Кодируем(десятичные)(12 байт)
1;0;0
1;0;0
1;0;0
0;0;0

И вуаля, эту хуйню можно пробовать кодировать повторно. Какое же максимальное значение для 3 байт + 1 байт = 4 млрд, сукабля.
Аноним 26/06/17 Пнд 23:03:19  155963503
>>155963471
слишком толсто
Аноним 26/06/17 Пнд 23:05:36  155963628
image.png (324Кб, 380x604)
>>155963471
Хуйня, на самом деле можно находить два числа, делить их друг на друга и потом убираем нолик и получаем нужную последовательность
Аноним 26/06/17 Пнд 23:07:25  155963729
>>155963488
Хотя погодь.
Максимальная степень 2, затем хоть 256 256 + 4 байт. В шестнадцатеричной 0h02ffff02 = 50331394
Всёравно дохуя.
Аноним 26/06/17 Пнд 23:11:02  155963933
На самом деле нахуй не надо ничего сжимать, потому что нахуй не нужно передавать информацию, вся возможная информация у нас уже есть.
Можно просто случайно перебирать последовательности нулей и единиц, пока они не сложатся в нужную информацию.
Аноним 26/06/17 Пнд 23:13:30  155964068
>>155963933
Эволюционисты пожаловали.
Аноним 26/06/17 Пнд 23:35:14  155965239
На самом деле нахуй не надо ничего сжимать, потому что нахуй не нужно передавать информацию, вся возможная информация уже есть у Господа Б-га
Нужно лишь прислушиваться к гласу Его, пока Он не направит тебя на путь истинный.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 58 | 3 | 9
Назад Вверх Каталог Обновить

Топ тредов
Избранное