三校联盟题gcd(A^B -1, A^C -1)是否为1?

三校联盟题gcd(A^B -1, A^C -1)是否为1?
三校联盟题gcd(A^B -1, A^C -1)是否为1?

当a为奇数时,无论a的多少次幂,减去1之后,都是偶数,偶数与偶数的最大公因数不会是1啊。所以,a不可能为奇数。a为大于2的偶数时,其中a-1为公因式,所以,只有当a==2时,使gcd(b,c)==1才输出Yes。

代码:

#include<bits/stdc++.h>
using namespace std;

int gcd(int a,int b)      //定义函数,返回值是a和b的最大公约数
{
    while(b!=0)
    {
        int tmp=b;
        b=a%b;
        a=tmp;
    }
    return a;
}

int main()
{
    int t,a,b,c;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d%d%d",&a,&b,&c);
        if(a==2 && gcd(b,c)==1)     //只有当a==2和 bc的最大公因数是1的时候,才可以。
            puts("Yes");
        else
            puts("No");
    }
    return 0;
}