文章

34

粉丝

109

获赞

7

访问

19.3k

头像
最大公约数1 题解:c解题 首先排序,然后去除0,n-1的值进行求解
P1426 中国科学技术大学机试题
发布于2024年3月2日 15:23
阅读数 501

#include <stdio.h>

void sort(int num[], int n)
{
    for (int i = 0; i < n; i++)
    {
        int min = i;
        for (int j = i + 1; j < n; j++)
        {
            if (num[j] < num[min])
            {
                min = j;
            }
        }

        int temp = num[min];
        num[min] = num[i];
        num[i] = temp;
    }
}

int gcd(int a, int b)
{
    if (b == 0)
        return a;
    else
        return gcd(b, a % b);
}

int main()
{
    int n;
    scanf("%d", &n);

    int num[n];

    for (int i = 0; i < n; i++)
    {
        scanf("%d", &num[i]);
    } // 初始化\

    // ------排序
    sort(num, n);
    printf("%d %d %d", num[0], num[n - 1], gcd(num[0], num[n - 1]));
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发