Че?! Скопируйте, что вам сказал компилятор. Не одно предложение, а всю ошибку - со строчкой в которой возникла ошибка, с цитатой вашего кода, с номером ошибки и всеми дополнительными данными от компилятора.
Вы там что-то про класс откопали где-то, вот компилятор хотя бы имя класса написал же?!
До мильена за несколько секунд вы сгенерируете на лету сами.
Но разложение любого числа до миллиона на множители алгоритмом из вопроса - это будет доли секунды. Поэтому тратить в сотни раз больше времени на расчет простых чисел, чтобы потом чуть быстрее разложить само число, нет никакого смысла. Даже если ограничиться только певрой сотней простых.
Поэтому я еще раз повторю: для разложения одного числа - быстрее метода нет (если не считать всякие микрооптимизации кода из вопроса для выигрыша 10-20%). Если чисел много, то уже появится смысл какие-то предподсчеты делать и решето из моего ответа тут будет самым эффективным методом.
Akina, по идее, надо считать и время рассчета этих простых чисел. Но даже если нет, то время их загрузки с диска будет все равно дольше метода в вопросе.
Это имеет смысл, когда вам надо много чисел раскладывать на множители. Тогда расчет/загрузка простых размажется по всем запросам.
Определил внутреннюю область (точку) многоугольника, которую "видят" как можно больше граней. Это - точка, в которой можно построить наибольшую по площади фигуру