2 条题解
-
2
#include <bits/stdc++.h> using namespace std; int main() { int n,a[10005],maxx = -10000; cin >> n; for(int i = 1; i <= n; i++) { cin >> a[i]; maxx = max(maxx,a[i]); } for(int i = maxx; i >= 1; i--) { bool ok = true; for(int j = 1; j <= n; j++) { if(a[j] % i != 0) { ok = false; break; } } if(ok) { cout << i; break; } } return 0; }
-
2
我来水一个(已AC)
#include <bits/stdc++.h> using namespace std; int a[105], b[105]; int main() { int n; cin >> n; for(int i = 1; i <= n; i++)//输入 { cin >> a[i]; } sort(a+1, a+n+1);//排序 int x = 1; for(int i = 1; i <= a[1]; i++)//找最小数的约数放进b[] { if(a[1] % i == 0) { b[x] = i; x++; } } sort(b+1, b+x+1);//排序 for(int i = x; i >= 1; i--)//一个个试 { bool flag = true; for(int j = 2; j <= n; j++) { if(a[j] % b[i] != 0) { flag = false; break; } } if(flag) { cout << b[i]; return 0; } } return 0; }
- 1
信息
- ID
- 868
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 4
- 标签
- 递交数
- 23
- 已通过
- 15
- 上传者