Gym - 101350C(简单的gcd,最大公约数)

这个题的题意是,求花费最小中盘子最大的.所以求最大公约数就行了.
然后注意数值的范围,用 long long

#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<map>
#include<algorithm>
using namespace std;
typedef long long ll;

ll gcd(ll a, ll b)
{
    return a == 0 ? b : gcd(b % a, a);
}
int main()
{
    int T;
    scanf("%d",&T);

    while (T--) {
        int N;
        scanf("%d",&N);
        ll sum = 0,flag = 0,num;
        for(ll i= 0;i < N;i++){
            scanf("%lld",&num);
            sum += num;
            flag = gcd(num,flag);
        }

        printf("%I64d %I64d\n",sum,flag);
    }
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容