快速素因子分解
#include<bits/stdc++.h> using namespace std; long long n; int main() { while(cin>>n){ //求素因子分解,加速原理,所有的数,如果有比sqrt(n)大的素因子,最多只有1种,1个 long long s=0,t=2,sq=(long long)sqrt(n); while(n>1){ while(n%t==0){ s++; n=n/t; } t++; if(t>sq) break; } if(n>1) s++; cout<<s<<endl; } return 0; }