Ответы пользователя по тегу Алгоритмы
  • Как сравнить есть ли уже такой файл в базе или нет?

    @12rbah
    с точностью совпадения, допустим в 99%.

    Вот посмотрите Как сравнить два текста в JS? . https://stackoverflow.com/questions/5042873/javasc...

    Проверку на хеш в вашем случае тоже можно делать, т.к. pdf довольно редко редактируют и все передают одну и ту же книгу.

    Есть несколько сотен тысяч PDF файлов.

    Это реальная проблема или просто от нечего делать придумали? Слишком мало информации по самим документам. в некоторых сферах, где много типовых отчетов это обычное дело когда документ на 95% похож на другой, поменяться может например только одна цифра в дате, и такой документ нельзя будет отбраковывать. И из пдфа вы не всегда можете извлечь текст для сравнения. В общем довольно много подводных камней. Поэтому стоит более конкретно определиться с задачей.

    upd: в общем есть еще такая особенность, что нужно правильно выбрать средство для извлечения текста, т.к. многие средства извлекают не всегда весь текст. Ну и еще интересно как быстро вы сравните 1 pdf со 200-300к других pdf, как по мне затраты на этот процесс будут слишком большими. Можно конечно сравнить только часть текста. Да кстати, извлечение текста из pdf медленный процесс, текст из некоторых страниц может извлекаться больше секунды на обычных процах (тестил на документах в 600-700 страниц), я пользовался только некоммерческими решениями, возможно вы найдете что-то быстрее, но парсить pdf вам придется явно не на ноде, т.к. это слишком медленно будет.
    Ответ написан
    1 комментарий
  • Как ввести неопределённое количество строк С++?

    @12rbah
    Напишите задачу полностью, т.к. непонятно что вам нужно, но как вариант такие задачи решать через буфер. Условно вы копируете файл в 50гб, но вместо считывания 50гб в память, вы считываете по 1мб и запоминаете позицию пока копирование не закончится.
    Ответ написан
    Комментировать
  • Как он это "заметил"?

    @12rbah
    Как он заметил эту формулу?

    Ну на самом деле некоторые формулы можно вывести самостоятельно, если предполагаешь, что некоторые числа имеют связь.
    В школе как-то подумал, что квадраты натуральных чисел связаны друг с другом, в итоге получил, такую закономерность
    1 = 1
    1 + 3 = 4 (2^2)
    1 + 3 + 5 = 9(3^2)
    1 +... 7 = 16
    1 +... 7+9 = 25
    1 +... 7+9+11 = 36
    ...
    думаю дальше понятно, например через эту формулу можно проверить есть ли целочисленный квадрат у числа (хотя я бы так делать не с)

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