В соответствии с этим сообщением мы можем получить все делители числа через следующие коды.
for (int i = 1; i <= num; ++i){
if (num % i == 0)
cout << i << endl;
}
Например, делителями числа 24
являются 1 2 3 4 6 8 12 24
.
После поиска некоторых связанных сообщений я не нашел хороших решений. Есть ли эффективный способ сделать это?
Мое решение:
- Найти все простые коэффициенты заданного числа через это решение.
- Получить все возможные комбинации этих простых факторов.
Однако, похоже, это нехорошо.