1. 题目 2. 代码 这一题很容易就判超时了!而且要想明白为什么直接可以一个循环,不需要isPrime函数判别。 #include <iostream> using namespace std; int main(){ long n; cin >> n; for(int i=2; i*i<=n && n>1; i++){ while(!(n%i)){ cout << i << " "; n /= i; } } if(n>1){ cout << n << " "; } return 0; }