#include <iostream>
#include <numeric>
#include <vector>
int main() {
int a = 48, b = 18;
// Compute GCD
int gcd_result = std::gcd(a, b);
std::cout << "GCD of " << a << " and " << b << ": " << gcd_result << std::endl;
// Compute LCM
int lcm_result = std::lcm(a, b);
std::cout << "LCM of " << a << " and " << b << ": " << lcm_result << std::endl;
// GCD of multiple numbers
std::vector<int> numbers = {24, 36, 48, 60};
int multi_gcd = std::accumulate(numbers.begin(), numbers.end(), numbers[0],
[](int a, int b) { return std::gcd(a, b); });
std::cout << "GCD of multiple numbers: " << multi_gcd << std::endl;
return 0;
}