3526:最简真分数(2.1基本算法之枚举)

来源:互联网 发布:自然语言处理 数据挖掘 编辑:程序博客网 时间:2024/06/07 15:18

3526:最简真分数

总时间限制: 1000ms 内存限制: 65536kB
描述
给出n个正整数,任取两个数分别作为分子和分母组成最简真分数,编程求共有几个这样的组合。

输入
第一行是一个正整数n(n<=600)。
第二行是n个不同的整数,相邻两个整数之间用单个空格隔开。整数大于1且小于等于1000。
输出
一个整数,即最简真分数组合的个数。
样例输入
7
3 5 7 9 11 13 15
样例输出
17

#include<iostream>using namespace std;//http://noi.openjudge.cn/ch0201/3526///三重循环,还好数目比较小不会超时 int n,a[660],res=0;int main(){    cin>>n;    for(int i=0;i<n;i++){        cin>>a[i];    }    for(int i=0;i<n-1;i++){        for(int j=i+1;j<n;j++){            int x=max(a[i],a[j]);            int y=min(a[i],a[j]);            res++;            for(int k=2;k<=y;k++){                if(x%k==0&&y%k==0){                    res--;                    break;                }            }        }    }    cout<<res<<endl;}