2 条题解
- 
  1
#include <iostream> #include <vector> #include <cmath> using namespace std; long long gcd(long long a, long long b) { a = abs(a); b = abs(b); while (b != 0) { long long temp = a % b; a = b; b = temp; } return a; } int main() { int n, Q; cin >> n >> Q; vector<long long> a(n); for (int i = 0; i < n; ++i) { cin >> a[i]; } if (n == 1) { for (int i = 1; i <= Q; ++i) { cout << a[0] + i << endl; } } else { long long a0 = a[0]; long long g = 0; for (int j = 1; j < n; ++j) { long long d = a[j] - a0; g = gcd(g, d); } for (int i = 1; i <= Q; ++i) { long long x = a0 + i; cout << gcd(x, g) << endl; } } return 0; } 
信息
- ID
 - 3339
 - 时间
 - 1000ms
 - 内存
 - 256MiB
 - 难度
 - 7
 - 标签
 - 递交数
 - 57
 - 已通过
 - 13
 - 上传者