0
0
1
方亦欧
新手光能
新手光能
gcd是求两数的最大公因数,gcd(i,n)=1的意思就是i和n的最大公因数为1,即这两个数互质(互质的意思就是两个数的最大公因数为1,例如1和任何数的最大公因数都为1,所以1和所有数都互质,相邻的两数一定互质,如5和6,7和8,质数和不是此数倍数的非0自然数一定互质,如7和41,5和39)。
这一题可以用辗转相除法求两数的最大公因数,代码如下:
int r=m%n;
while(r)
{
m=n;
n=r;
r=m%n;
}
对于这一题,在外面加一个循环即可。
for(int i=1;i<=n;i++)
{
int i1=i;
int r=n%i1;
int n1=n;
while(r)
{
n1=i1;
i1=r;
r=n1%i1;
}
if(i1==1)
count++;
}
最后输出count。
但这一题属于高级数据结构,单纯用这种方法自然是不行的,具体怎么做我也不清楚。这种方法可以得到20分,供你参考用。
0
杨子逸
新手天翼
新手天翼
0
0
0