백준

백준 1934번: 최소공배수 (C언어)

NamDoHyeon 2023. 9. 17. 21:35

백준 1934번: 최소공배수 링크

https://www.acmicpc.net/problem/1934

문제를 풀기 전 생각한 것

A*B / A와 B의 GCD = A와 B의 LCM

풀면서 어려웠던 점

처음에는 유클리드 호제법을 모르고 하나씩 구하려고 했지만 코드가 너무 복잡해지고 어려웠다
그래서 구글에 검색하다 보니 유클리드 호제법을 알게 되었고 코드로 변환했더니 풀렸다

코드

#include <stdio.h>

int main(void) 
{
    int T, A, B;
    int ans;

    scanf("%d", &T);

    for (int i = 0; i < T; i++) {
        scanf("%d %d", &A, &B);

        ans = A * B;

        while (A != B) {
            if (A > B) {
                A -= B;
            }
            else {
                B -= A;
            }
        }

        ans = ans / A;

        printf("%d\n", ans);
    }

    return 0;
}

풀면서 배운 점

유클리드 호제법에 대해 알았다

반응형