圆环

lzusa 发布于 2019-04-17 0 次阅读


这里写图片描述
这里写图片描述

思路

用后面的每一个数和第一个数进行辗转相除求最大公约数就可以了

#include 
using namespace std;
int f[10000];
int n,m;
int main()
{
    scanf("%d",&n);
    for (int i=1;i<=n;i++)
        scanf("%d",&f[i]);
    int x=f[1];
    for (int i=2;i<=n;i++)
    {
        int y=f[i];
        int a=x,b=y,r=x%y;
        while (r!=0)
        {
            a=b;
            b=r;
            r=a%b;
        }
        printf("%d/%d\n",x/b,y/b);
    }
    return 0;
}
]]>