Sharing answer codes of mine about Programmers Level3. nlcm.

Level 3: N Least Common Multiple

Problem Statement

Least Common Multiple (LCM) means the smallest common number among the multiple of two numbers. For example, LCM of 2 and 7 would be 14. By extending the definition, the NLCM is the LCM of N numbers. For the input of N numbers through the nlcm function, return LCM of N numbers. For example, if [2,6,8,14] is entered, return 168.

Answer code (in C++)

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;

// Great Common Divisor between two by using Euclidean algorithm
long long gcd(long long A, long long B)
{
  return (A%B == 0 ? B : gcd(B, A%B));
}

long long lcm(long long A, long long B) // Least Common Multiple between two
{
  return A * B / gcd(A,B);
}

long long nlcm(vector<int> num)
{
  long long answer;
  sort (num.begin(), num.end()); // Sort it in ascending order

  answer = num[0];
  for (vector<int>::size_type i = 1; i<num.size(); ++i){
    answer = lcm(num[i], answer);
  }

    return answer;
}

int main()
{
    vector<int> test{2,6,8,14};

    cout << nlcm(test);
}

# Compile time: 3ms