数据很水。比较坑,一直以为质因数是不重复的,竟然全部都算。orz、
#include<cstdio> #include<iostream> #include<cmath> #include<cstring> #define N 100100 using namespace std; int ans=0,n; long long t; bool su(long long k) { if (k==2) return 1; for (long long i=2;i<=ceil(sqrt(k));i++) if (k%i==0) return 0; return 1; } int main() { cin>>n; for (int i=1;i<=n;i++) { scanf("%lld",&t); ans=0; for (long long i=2;i<=t;i++) { long long x; if ((t%i==0)&&su(i)) ans++; } cout<<ans<<endl; } }
#include<cstdio> #include<iostream> #include<cmath> using namespace std; long long n; int t,ans=0; int main() { cin>>t; for (int i=1;i<=t;i++) { ans=0; scanf("%lld",&n); for (int i=2;i<=n;i++) while (n%i==0) n/=i,ans++; cout<<ans<<endl; } }