Автор: Дубенков Родион Сергеевич
Алгоритм запуска программы:
- cd build
- ./dirscomparator --dir1=<путь до первой директории> --dir2=<путь до второй директории> --similarity=<процент сходства Тони>
- PROFIT
Пример c тестовыми директориями в репозитории: ./dirscomparator --dir1=../testdir1 --dir2=../testdir2 --similarity=30
В данной задаче есть один неоднозначный момент: Как считать процент похожести файлов?
Я привёл довольно сбалансированное решение с точки зрения скорости и корректности:
Я брал каждый файл и представлял его в виде мапы byte -> count.
И тогда для нахождения количества общих символов нужно пройтись по мапе и сложить все общие символы (то есть min(count1, count2)).