(1), строки бьем в другой файл вместе с ее хэшем. (2)Хэши грузим в память, они влезут. Можно брать короткие, байта по 4, но тогда придется с коллизиями вручную разбираться (3) для каждого хэша считаем повторяемость любвм способом
(4) выводим результаты последовательного чтения промеж.файла в третий файл в формате "хэш, строка, величина повторяемости для данного хэша", игнорируя строки с тем хэшем что уже были. Готово.