#include <iostream>

using namespace std;

 

int GCD(int a, int b) {
    if (b == 0)
        return a;
    while (b != 0)
        return GCD(b, a%b);
}
int main() {
    int A, B, result;

    cin >> A >> B;
    result = GCD(A, B);
    cout << result << endl;  //최대공약수
    cout << A * B / result; // 최소공배수
}

 

시간 복잡도 개선을 위해 for문이 아닌 재귀함수 이용!

'자윤이와고리즘 > Code' 카테고리의 다른 글

[백준] 9613 | GCD합  (0) 2019.05.08
[백준]1934|최소공배수  (0) 2019.05.07
[백준]9012|괄호  (0) 2019.03.23
[백준]9372|상근이의여행  (0) 2019.03.22
[백준]7576번|토마토  (0) 2019.03.22

+ Recent posts