1 条题解
-
3
水题!!别被迷惑了!!(如果写了一大堆还WA了,
面壁思过一下思路:
- 找出所有数的最大,记为;
- 遍历一遍,看看有几个数等于,设为x,则答案为
没什么可说的,上代码!
#include<bits/stdc++.h> using namespace std; int gcd(int x,int y){ if(y==0)return x; return gcd(y,x%y); } int a[200005]; int main(){ freopen("magic.in","r",stdin); freopen("magic.out","w",stdout); int n;cin>>n; cin>>a[1]; int cnt=a[1]; for(int i=2;i<=n;i++){//找所有数的gcd cin>>a[i]; cnt=gcd(cnt,a[i]); } int ans=n; for(int i=1;i<=n;i++){ if(a[i]==cnt)ans--; } cout<<ans; }
看完了点个绿色的赞再走噢,蟹蟹!
- 1
信息
- ID
- 772
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 84
- 已通过
- 29
- 上传者