大概两个点吧
一个是因数的性质,搜到sqrt(n)即可
一个是如果最后剩下一个1,就不用输出了(特判一下)
#include <iostream> using namespace std; int main() { int n;cin >> n; for(int i = 2;i*i <= n;i ++){ while( n % i == 0 ){ cout << i << " "; n /= i; } }if( n != 1 ) cout << n << endl; return 0; }
#牛客春招刷题训练营# + 链接