Saleh127

UVA 10484

Jul 21st, 2020
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ll long long int
  4. ll nd(ll n,ll p)
  5. {
  6. ll c=0;
  7. ll e=p;
  8. while(n/p>0)
  9. {
  10. c+=(n/p);
  11. n=n/p;
  12. }
  13. return c;
  14. }
  15. int p[]= {2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101};
  16. int main()
  17. {
  18. ll n,d,a,c1,c2,e,f,i,j,k,l;
  19. while(cin>>n>>d)
  20. {
  21. if(n==0 && d==0) break;
  22. if(d<0) d=llabs(d);
  23. a=1;
  24. f=0;
  25. for(i=0; p[i]<100; i++)
  26. {
  27. j=p[i];
  28. c1=nd(n,j);
  29. c2=0;
  30. while(d%j==0)
  31. {
  32. d/=j;
  33. c2++;
  34. }
  35. if(c1<c2)
  36. {
  37. f=1;
  38. break;
  39. }
  40. a*=(c1-c2+1);
  41. }
  42. if(f==0)
  43. {
  44. if(d==1) cout<<a<<endl;
  45. else cout<<0<<endl;
  46. }
  47. else cout<<0<<endl;
  48. }
  49. return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment