Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <iostream>
- #include<vector>
- #include<algorithm>
- #include<math.h>
- #include<cstring>
- #include<map>
- #include<set>
- #include <cctype>
- #include <cmath>
- #include <cstdio>
- #include<string>
- using namespace std;
- vector<pair<int, int>>v;
- bool get_div(int a,int b) {
- v.clear();
- int i = 2;
- int l = 0;
- while (b>1&&i*i<=b ) {
- l = 0;
- while (b%i == 0) {
- b /= i;
- l++;
- }
- if (l) {
- v.push_back({ i,l });
- }
- ++i;
- }
- if (b!=1)
- v.push_back({ b,1 });
- int h = 0;
- for (i = 0; i < v.size(); ++i) {
- h = 0;
- l = a;
- while (l) {
- l /= v[i].first;
- h += l;
- }
- if (h < v[i].second)
- return false;
- }
- return true;
- }
- int main() {
- int a, b;
- while (cin>>a) {
- scanf("%d", &b);
- if (get_div(a, b)) {
- printf("%d divides %d!\n", b, a);
- }
- else
- printf("%d does not divide %d!\n", b, a);
- }
- system("pause");
- }
Add Comment
Please, Sign In to add comment