Advertisement
Guest User

Untitled

a guest
Oct 21st, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.09 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define mx 1765789
  5. int a[mx],cnt[mx];
  6. int sp[mx+3];
  7. int p=0;
  8. void seive()
  9. {
  10.     sp[1]=1;
  11.     for(int i=2;i<=mx;i+=2){
  12.         sp[i]=2;
  13.     }
  14.     for(int i=3;i<=mx;i+=2){
  15.         sp[i]=i;
  16.     }
  17.     for(int i=3;i<=sqrt(mx);i+=2){
  18.         if(sp[i]==i){
  19.             for(int j=i*i;j<=mx;j+=i){
  20.                 if(sp[j]==j){
  21.                     sp[j]=i;
  22.                 }
  23.             }
  24.         }
  25.     }
  26.     a[p++]=2;
  27.     for(int i=3;i<=mx;i+=2){
  28.         if(sp[i]==i) a[p++]=i;
  29.     }
  30. }
  31. int main()
  32. {
  33.     seive();
  34.     int t;
  35.     long long int n;
  36.     int c=0;
  37.     scanf("%d",&t);
  38.     while(t--){
  39.             c++;
  40.         scanf("%lld",&n);
  41.         int mn=INT_MIN;
  42.         int mul=1;
  43.         int x=sqrt(n);
  44.         for(int i=0;i<p ;i++){
  45.             if(n%a[i]==0){
  46.                 int cnt=0;
  47.                 while(n%a[i]==0){
  48.                     n/=a[i];
  49.                     cnt++;
  50.                 }
  51.                 mul*=(cnt+1);
  52.             }
  53.         }
  54.         if(n!=1) mul*=2;
  55.     printf("Case %d: %d\n",c,mul-1);
  56.     }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement