Guest User

Untitled

a guest
Jul 20th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <iostream>
  3. #include<vector>
  4. #include<algorithm>
  5. #include<math.h>
  6. #include<cstring>
  7. #include<map>
  8. #include<set>
  9. #include <cctype>
  10. #include <cmath>
  11. #include <cstdio>
  12. #include<string>
  13. using namespace std;
  14. vector<pair<int, int>>v;
  15. bool get_div(int a,int b) {
  16. v.clear();
  17. int i = 2;
  18. int l = 0;
  19. while (b>1&&i*i<=b ) {
  20. l = 0;
  21. while (b%i == 0) {
  22. b /= i;
  23. l++;
  24. }
  25. if (l) {
  26. v.push_back({ i,l });
  27. }
  28. ++i;
  29. }
  30. if (b!=1)
  31. v.push_back({ b,1 });
  32. int h = 0;
  33. for (i = 0; i < v.size(); ++i) {
  34. h = 0;
  35. l = a;
  36. while (l) {
  37. l /= v[i].first;
  38. h += l;
  39. }
  40.  
  41. if (h < v[i].second)
  42. return false;
  43. }
  44. return true;
  45. }
  46. int main() {
  47. int a, b;
  48.  
  49. while (cin>>a) {
  50. scanf("%d", &b);
  51. if (get_div(a, b)) {
  52. printf("%d divides %d!\n", b, a);
  53. }
  54. else
  55. printf("%d does not divide %d!\n", b, a);
  56. }
  57.  
  58. system("pause");
  59. }
Add Comment
Please, Sign In to add comment