约数
1.求一个数组的最大公约数
输入: nums = {12, 24, 36, 48} 输出: 12
知识点:
std::gcd(),求两个数的最大公约数
#include <iostream> #include <vector> #include <numeric> // 包含 gcd using namespace std; int findGCD(vector<int>& nums) { int result = nums[0]; for (int i = 1; i < nums.size(); ++i) { result = gcd(result, nums[i]); // 如果中间结果为 1,可以直接提前返回 if (result == 1) break; } return result; } int main() { vector<int> nums = {12, 24, 36, 48}; cout << "数组的最大公约数是:" << findGCD(nums) << endl; return 0; }
浙公网安备 33010602011771号