Submission #1165912

#TimeUsernameProblemLanguageResultExecution timeMemory
1165912Math4Life2020Portal (BOI24_portal)C++20
11 / 100
22 ms2496 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; using pii = pair<ll,ll>; ll gcd2(ll a, ll b) { a = labs(a); b = labs(b); if (a==0) { return b; } if (b==0) { return a; } return gcd(a,b); } ll cpr(pii p0, pii p1) { return labs(p0.first*p1.second-p0.second*p1.first); } int main() { ios_base::sync_with_stdio(false); cin.tie(0); ll N; cin >> N; ll ans = 0; if (N<=2) { cout << "-1\n"; exit(0); } vector<pii> v0; pii p0; ll x1,y1; cin >> x1 >> y1; p0 = {x1,y1}; for (ll i=1;i<N;i++) { ll x2,y2; cin >> x2 >> y2; v0.push_back({x2-x1,y2-y1}); } vector<pii> vtest; vtest.push_back(v0[0]); for (ll i=1;i<(N-1);i++) { bool df = 0; for (pii p0: vtest) { ll ans1 = cpr(p0,v0[i]); if (gcd(ans,ans1)<ans) { df = 1; } ans = gcd(ans,ans1); } if (df) { vtest.push_back(v0[i]); } } if (ans==0) { cout << "-1\n"; } else { cout << ans << "\n"; } }
#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...