1.1.30

上次更新:2019-04-17
发现了题解错误/代码缺陷/排版问题?请点这里:如何:提交反馈

解答

互质可以用之前的 GCD 最大公因数算法判断,如果最大公因数是 1 则两数互质。

代码

//互质 = 最大公约数为 1 = gcd(i, j) == 1
static void Main(string[] args)
{
    int N = int.Parse(Console.ReadLine());

    bool[,] a = new bool[N, N];

    for (int i = 0; i < N; ++i)
    {
        for (int j  = 0; j < N; ++j)
        {
            a[i, j] = (gcd(i, j) == 1);
        }
    }

    PrintArray2D(a, N, N);
}

static int gcd(int a, int b)
{
    if (b == 0)
        return a;

    return gcd(b, a % b);
}

private static void PrintArray2D(bool[,] array, int rows, int columns)
{
    for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < columns; j++)
        {
            Console.Write($"\t{array[i, j]}");
        }
        Console.Write("\n");
    }
}
上一题 下一题