[백준] 13241번 : 최소공배수 (JAVA)

2026. 3. 6. 22:37·코테(Solved.ac + Programmers)
728x90

🔗 문제 링크

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


📌 문제 개요

두 자연수 A와 B가 주어졌을 때, 두 수의 최소공배수(LCM) 를 구하는 문제
최소공배수란 두 수의 공통 배수 중 가장 작은 값을 의미

예시

입력  
6 8  

출력  
24

📌 접근 방법

최소공배수는 다음 공식을 이용하면 쉽게 구할 수 있다.

LCM(A,B) = (A × B) / GCD(A,B)

  1. 두 수 입력
  2. 유클리드 호제법을 이용해 최대공약수(GCD) 계산
  3. 공식 (A / GCD) * B 로 최소공배수 계산

📌 핵심 아이디어

유클리드 호제법 : 두 수 a, b가 있을 때

gcd(a, b) = gcd(b, a % b)

이 과정을 b == 0이 될 때까지 반복하면, 최종적으로 a가 최대공약수가 된다.

gcd(6, 8)  

8 % 6 = 2  
6 % 2 = 0  

GCD = 2

📌 전체 코드

package no_13241;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class No13241 {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        long a = Long.parseLong(st.nextToken());
        long b = Long.parseLong(st.nextToken());

        System.out.println(a / gcd(a, b) * b);
    }

    static long gcd(long a, long b) {

        while (b != 0) {
            long temp = a % b;
            a = b;
            b = temp;
        }

        return a;
    }
}

📌 정리

  • 최소공배수는 최대공약수(GCD) 를 이용해 쉽게 계산할 수 있다.
  • 유클리드 호제법을 사용하면 O(logN) 시간으로 GCD를 구할 수 있다.
  • (a * b) / gcd 대신 (a / gcd) * b 형태로 계산하면 오버플로우를 방지할 수 있다.
728x90

'코테(Solved.ac + Programmers)' 카테고리의 다른 글

[백준] 1292번 : 쉽게 푸는 문제 (JAVA)  (0) 2026.03.08
[백준] 1402번 : 아무래도이문제는A번난이도인것같다 (JAVA)  (0) 2026.03.07
[백준] 2018번 : 수들의 합 5 (JAVA)  (0) 2026.03.05
[백준] 2747번 : 피보나치 수 (JAVA)  (0) 2026.03.04
[백준] 2057번 : 팩토리얼 분해 (JAVA)  (0) 2026.03.03
'코테(Solved.ac + Programmers)' 카테고리의 다른 글
  • [백준] 1292번 : 쉽게 푸는 문제 (JAVA)
  • [백준] 1402번 : 아무래도이문제는A번난이도인것같다 (JAVA)
  • [백준] 2018번 : 수들의 합 5 (JAVA)
  • [백준] 2747번 : 피보나치 수 (JAVA)
PUSH → MERGE → DEPLOY
PUSH → MERGE → DEPLOY
데이터 흐름과 운영 자동화를 설계하는 백엔드 개발자
  • PUSH → MERGE → DEPLOY
    Coding Dongin
    PUSH → MERGE → DEPLOY
  • 전체
    오늘
    어제
    • MEUN
      • 코테(Solved.ac + Programmers)
      • BootCamp(JAVA)
      • JAVA
      • SpringBoot
      • JavaScript
      • JSP
      • DB(SQL)
      • React
      • HTML_CSS
      • jQuery
      • SCSS
      • GSAP
      • 설치 + 꿀팁
      • 정보처리기사 오답노트
      • 정보처리기사 기출문제
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GIT
  • 공지사항

  • 인기 글

  • 태그

    백엔드개발자
    브루트포스
    정처기오답노트
    자료구조
    정처기
    정렬
    정처기실기
    정보처리기사
    java
    solved.ac
    수학
    level0
    피보나치
    코딩테스트
    springboot
    프로그래머스
    알고리즘
    Level2
    백준
    완전탐색
    시뮬레이션
    배열
    실기
    level1
    정보처리기사 실기 기출문제
    구현
    문자열
    자바
    dp
    기출문제
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.4
PUSH → MERGE → DEPLOY
[백준] 13241번 : 최소공배수 (JAVA)
상단으로

티스토리툴바