Advertisement
Guest User

Prime factorization

a guest
Sep 2nd, 2014
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3. #include<cmath>
  4. #include<map>
  5. #define SIZE 20
  6. using namespace std;
  7. void sieve();
  8. bool a[SIZE];
  9. vector<int>factor1;
  10. vector<int>factor2;
  11. map<int,int>map1,map2;
  12. map<int,int>::iterator cur;
  13. main(){
  14. sieve();
  15. int i,m,c,b;
  16. cin>>c>>b;
  17. if(c<b){
  18. m=c;
  19. c=b;
  20. b=m;}
  21.  
  22. i=2;
  23. while(i<=c){
  24. if(a[i]==0&&c%i==0)
  25. factor1.push_back(i);
  26. i++;}
  27. i=2;
  28. while(i<=b){
  29. if(a[i]==0&&b%i==0)
  30. factor2.push_back(i);
  31. i++;
  32. }
  33. for(i=0;i<factor1.size();i++)
  34. map1[factor1[i]]++;
  35. //cout<<factor1[i]<<" ";
  36. cout<<"\n";
  37. for(i=0;i<factor2.size();i++)
  38. map2[factor2[i]]++;
  39. // cout<<factor2[i]<<" ";
  40. for(cur=map1.begin();cur!=map1.end();cur++)
  41. cout<<cur->first<<" "<<cur->second;
  42. //if(map1[i]<map2[i])
  43.  
  44.  
  45.  
  46. }
  47. void sieve(){
  48. int i,k;
  49. int sq=sqrt(SIZE);
  50. for(i=0;i<=SIZE;i++)
  51. a[i]=0;
  52. a[0]=a[1]=1;
  53. for(i=4;i<=SIZE;i+=2)
  54. a[i]=1;
  55. for(i=3;i<=sq;i++)
  56. if(a[i]==0)
  57. for(k=2*i;k<=SIZE;k+=i)
  58. a[k]=1;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement