FLOW016 - Editorial

Problem Link - GCD and LCM Practice Problem in Basic Math

Problem Statement:

Two integers A and B are the inputs. Write a program to find GCD and LCM of A and B.

Approach:

  • GCD: It is the largest integer that divides both A and B without leaving a remainder.
  • LCM: It is the smallest positive integer that is divisible by both A and B.
  • GCD(A, B): Can be calculated using the Euclidean Algorithm - Euclid Algorithm in Number theory
  • LCM(A, B): Can be derived from the formula:
\text{LCM}(A, B) = \frac{A \times B}{\text{GCD}(A, B)}

Refer to this: GCD - LCM Relationship in Number theory
This formula works because the product of the GCD and LCM of two numbers is equal to the product of the numbers themselves.

Complexity:

  • Time Complexity: The time complexity of the Euclidean algorithm is
    O(log(min(a,b))). For calculating lcm it requires O(1).
  • Space Complexity: O(1) No extra space required.