题解 | 最简真分数

最简真分数

https://www.nowcoder.com/practice/1f1db273eeb745c6ac83e91ff14d2ec9

#include <iostream>
using namespace std;

const int N = 610;
int a[N];

int gcd(int x,int y){
    return y ? gcd(y,x%y):x;
}
int main() {
    //判断是否是最简真分数的思路就是
    //先判断是否是真分数
    //然后判断是否是最简
    int n;
    while(cin>>n){
        if(n==0)break;
        for(int i=0;i<n;i++)
            scanf("%d",&a[i]);
        int count = 0;
        for(int i=0;i<n;i++)
            for(int j=0;j<n;j++){
                if(a[i]>=a[j])continue;
                else{
                    int x = gcd(a[i],a[j]);
                    if(x==1)count++;
                }
            }

        cout<<count<<endl;
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

05-10 16:48
门头沟学院 Java
程序员小白条:主要原因,投递太晚了,快手应该早点溜了,你都从去年9月开始的,半年也差不多3月跑路了,这样的话,至少有5个以上的面试机会
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务