Факторизация числа?
Ошибка целочисленного переполнения.55999*76699 == 0x1000186a5  // 33 бита
100005      ==     0x186a5
Итого, из остальных двух ответов: 
1) пользоваться типом long long (или unsigned long long, если заранее известно, что числа положительные)
2) пробежаться по всем числам от 1 до n, запомнить все простые в список
3) найти все сочетания по 2 с повторами из списка, дающие при умножении n