From d586eb6b2485161848f99f6cadff7d500db54729 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 23 Mar 2021 19:38:45 +0800 Subject: import(solutions): Add aacwing 1246. --- works/solutions/acwing/1246.cpp | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 works/solutions/acwing/1246.cpp (limited to 'works') diff --git a/works/solutions/acwing/1246.cpp b/works/solutions/acwing/1246.cpp new file mode 100644 index 0000000..5c0454c --- /dev/null +++ b/works/solutions/acwing/1246.cpp @@ -0,0 +1,34 @@ +#include +#include +#include + +int gcd(int a, int b) { return b ? gcd(b, a % b) : a; } + +int N; +int A[100010]; + +int main() { + std::ios_base::sync_with_stdio(false); + std::cin.tie(nullptr); + + std::cin >> N; + + for (int i = 0; i < N; i++) { + std::cin >> A[i]; + } + + std::sort(A, A + N); + + int g = A[1] - A[0]; + for (int i = 1; i < N - 1; i++) { + g = gcd(g, A[i + 1] - A[i]); + } + + if (g == 0) { + std::cout << N; + } else { + std::cout << (A[N - 1] - A[0]) / g + 1; + } + + return 0; +} \ No newline at end of file -- cgit v1.2.3