#include <iostream> using namespace std; void divisor(long long n,long long d){ if(n==1) return; while(n%d!=0){ if(n<d*d){//这段代码是为了防止超时用的 cout<<n; return; } d++; } cout<<d<<' ';//n%d==0 divisor(n/d, d); } int main() { long long n; while (cin >> n) { // 注意 while 处理多个 case divisor(n,2); } }