多个数计算最大公约数模板

阅读 56

2022-03-12

计算多个数的最大公约数的算法思路:

计算前两个数是最大公约数,记为gcd,再计算gcd与第三个数的最大公约数,更新gcd为本次计算的最大公约数,再计算gcd与第四个数的最大公约数,更新gcd为本次计算的最大公约数,……

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

const int N = 1e5+10;

int a[N], cnt;

int main()
{
	while (cin >> a[cnt]) cnt ++;
	
	int gcd = __gcd (a[0], a[1]);
	for (int i = 2;i < cnt;i ++)
		gcd = __gcd (gcd, a[2]);
	
	cout << gcd << endl;

	return 0;
}

精彩评论(0)

0 0 举报