题目描述
I'll give you a number , please tell me how many different prime factors in this number.
输入
There is multiple test cases , in each test case there is only one line contains a number N(2<=N<=100000). Process to the end of file.
输出
For each test case , output one line contains one number , indicating different prime factor in the number N.
样例输入
12
5
30
样例输出
2
1
3
提示
12 = 2 * 2 * 3
5 = 5
30 = 2 * 3 * 5
#include<iostream> using namespace std; int a[100001]; void go(){ memset(a, 0, sizeof(a)); int i,j; for (i = 2; i < 100001;i++) if (a[i] == 0){ for (j = i; j < 100001; j+=i)a[j]++; } } int main(){ //freopen("in.txt", "r", stdin); int x; go(); while (cin >> x)cout << a[x] << endl; return 0; }