2 条题解
-
0
有1就寄了,不然的话互质想质数,观察一下数据最大1e9,但是我可以超过1e9,那随便找个大于1e9的质数秒了
#include<bits/stdc++.h> using namespace std; void sol(){ int n; cin >> n; int p = 1e9 + 7, t; while(n --) cin >> t, t == 1 ? p = -1 : 1; cout << p << endl; } int main(){ int t; cin >> t; while(t --) sol(); return 0; } -
0
构造,数论
如果数组中有 1 ,那么肯定无解。
否则,一个很大的质数肯定不会是数组中的数的倍数,因此我们选择一个比较大的质数即可。
时间复杂度 。
#include<bits/stdc++.h> using namespace std; int main(){ int T; cin >> T; while(T--){ int n; cin >> n; int ans = 1e9 + 7; for(int i = 1; i <= n; i++){ int x; cin >> x; if(x == 1) ans = -1; } cout << ans << endl; } }
- 1
信息
- ID
- 157
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- 递交数
- 86
- 已通过
- 19
- 上传者