Submission #238669

#TimeUsernameProblemLanguageResultExecution timeMemory
238669VimmerPictionary (COCI18_pictionary)C++14
0 / 140
1591 ms1136 KiB
#include <bits/stdc++.h> //#include <ext/pb_ds/assoc_container.hpp> //#include <ext/pb_ds/tree_policy.hpp> #pragma GCC optimize("unroll-loops") #pragma GCC optimize("-O3") #pragma GCC optimize("Ofast") //#pragma GCC optimize("fast-math") //#pragma GCC optimize("no-stack-protector") #define F first #define S second #define sz(x) int(x.size()) #define pb push_back #define N 100001 #define M ll(1e9 + 7) #define inf 1e9 + 1e9 using namespace std; //using namespace __gnu_pbds; typedef long double ld; typedef long long ll; typedef short int si; typedef array <int, 2> a2; //typedef tree <int, null_type, less_equal<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_set; ll a, b, cur; int main() { //freopen("input.txt", "r", stdin); //freopen("output4.txt", "w", stdout); ios_base::sync_with_stdio(0); istream::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m, q; cin >> n >> m >> q; for (; q > 0; q--) { int x, y; cin >> x >> y; vector <int> g, v; g.clear(); v.clear(); int sg = sqrt(x); for (int i = 2; i <= sg; i++) if (x % i == 0) {g.pb(i); if (x / i != i) g.pb(i);} sg = sqrt(y); for (int i = 2; i <= sg; i++) if (y % i == 0) {v.pb(i); if (y / i != i) v.pb(i);} g.pb(x); v.pb(y); ll mx = 1; for (auto it : g) for (auto itr : v) { a = it, b = itr; cur = (a * b) / __gcd(a, b); if (cur > n) continue; ll gc1 = __gcd(cur, ll(x)), gc2 = __gcd(cur, ll(y)); ll minr = min(gc1, gc2); if (minr <= m) mx = max(mx, minr); } cout << m - mx + 1 << endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...