Форум: "Потрепаться";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
ВнизСамая короткая программа подсчета Найти похожие ветки
← →
McSimm (2003-12-12 10:55) [0]Нужно подсчитать количество ненулевых битов в файле. Предложите алгоритм самой короткой программы для этого
← →
Sandman25 (2003-12-12 11:06) [1]Константный массив с индексом 0..MAXINT
A[0]=0, A[1]=1, A[2]=1, A[3]=2, A[4]=1...
← →
Romkin (2003-12-12 11:09) [2]Короткой по какому критерию? Самый короткий текст, самую быструю, экономную? :)
← →
Romkin (2003-12-12 11:11) [3]Первое, что приходит в голову, это константный массив array [byte] of byte, значения которого - число нулевых битов :) После этого - простой проход с суммированием значений массива по индексу байта из файла
← →
Romkin (2003-12-12 11:13) [4]Да, кажется, у i386 есть в ассемблере команда подсчета количества нулевых бит (или единичных?). Тогда и таблица не нужна. А вот файл весь в любом случае читать придется
← →
McSimm (2003-12-12 11:17) [5]Задачка с юмором
← →
McSimm (2003-12-12 11:43) [6]Решение: 7*FileSize
Также это решение подходит для посчета "не первых", "не вторых" и т.д. битов :)
Ну, а за неграмотность в условии просто извинияюсь ;)
← →
Romkin (2003-12-12 11:43) [7]Моя на рассвете юмора не панимат!
Да и мало ли что нужно... Я тут частотный словарь составлял, тоже та еще задачка. Особенно, когда меня напугали, что файлы с текстом несколько гигабайт будут... Когда написал, выяснилось, что мегабайт :))))
← →
Sandman25 (2003-12-12 11:47) [8]McSimm © (12.12.03 10:55)
Таких задач можно много напридумывать...
Как найти размер файда? Ответ - измерить линейкой.
Как найти число ненулевых битов в файле? Ответ - 1. Остальные биты ненулевые (если считать биты от начала файла, не начиная отсчет заново для каждого следующего байта).
← →
Думкин (2003-12-12 11:50) [9]> [7] Romkin © (12.12.03 11:43)
Ты меня этим в чате запугивал? :-)))
А в чем проблема была? Я тогда не понял. Я составлял такой словарь - ужасов не набдюдал.
← →
Romkin (2003-12-12 11:55) [10]В том, что словарь-то шерстить надо, а он в память не лезет, и если прикинуть, то время увеличивается оченно хорошо, у меня получалась пара дней где-то. К счастью, вовремя разобрались, а то я уже в дебри двоичных словных деревьев полез... Ограничился TStringList
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c