C#

백준 C# 13241 문제 풀이

psb08 2024. 11. 13. 00:10
728x90

문제 링크 : https://www.acmicpc.net/problem/13241

목차

1. 설명

 

2. 내 코드

 

3. 문제 풀이 해석 내용

 

4. 실행 결과

 

설명

백준 실버 5 문제 입니다.

문제명 : 최소공배수

 

내 코드

using System;

class Program
{
    // 최대공약수 계산
    static long GCD(long a, long b)
    {
        while (b != 0)
        {
            long temp = b;
            b = a % b;
            a = temp;
        }
        return a;
    }

    // 최소공배수 계산
    static long LCM(long a, long b)
    {
        return (a / GCD(a, b)) * b;
    }

    static void Main()
    {
        string[] input = Console.ReadLine().Split();
        long A = long.Parse(input[0]);
        long B = long.Parse(input[1]);

        long result = LCM(A, B);
        Console.WriteLine(result);
    }
}

 

문제 풀이 해석 내용

 

최대공약수 계산

static long GCD(long a, long b)
{
    while (b != 0)
    {
        long temp = b;
        b = a % b;
        a = temp;
    }
    return a;
}

static long GCD(long a, long b): 두 개의 long 타입 정수를 인자로 받아 최대공약수를 계산하는 메서드입니다.
while (b != 0): b가 0이 아닐 때까지 반복합니다.
long temp = b;: b의 값을 temp에 저장합니다.
b = a % b;: a를 b로 나눈 나머지를 b에 저장합니다.
a = temp;: temp에 저장된 b의 값을 a에 저장합니다.
반복이 끝나면 a에 최대공약수의 값이 담겨 있으므로 이를 반환합니다.

 

 

최소공배수 계산

static long LCM(long a, long b)
{
    return (a / GCD(a, b)) * b;
}

static long LCM(long a, long b): 두 개의 long 타입 정수를 인자로 받아 최소공배수를 계산하는 메서드입니다.
return (a / GCD(a, b)) * b;: 최소공배수는 두 수의 곱을 최대공약수로 나눈 값이므로, 

a를 GCD로 나눈 후 b를 곱하여 결과를 반환합니다.

 

 

Main

static void Main()
{
    string[] input = Console.ReadLine().Split();
    long A = long.Parse(input[0]);
    long B = long.Parse(input[1]);

    long result = LCM(A, B);
    Console.WriteLine(result);
}

static void Main(): C# 프로그램의 시작점인 Main 메서드입니다.
string[] input = Console.ReadLine().Split();: 사용자로부터 입력을 받고, 공백으로 나누어 문자열 배열에 저장합니다.
long A = long.Parse(input[0]);: 첫 번째 입력값을 long 타입으로 변환하여 A에 저장합니다.
long B = long.Parse(input[1]);: 두 번째 입력값을 long 타입으로 변환하여 B에 저장합니다.
long result = LCM(A, B);: A와 B의 최소공배수를 계산하여 result에 저장합니다.
Console.WriteLine(result);: 계산된 최소공배수 값을 콘솔에 출력합니다.

 

 

 

실행 결과

 

728x90

'C#' 카테고리의 다른 글

백준 C# 10845문제 풀이  (0) 2024.11.18
백준 C# 10828 문제 풀이  (0) 2024.11.18
백준 C# 11650 문제 풀이  (0) 2024.11.12
백준 C# 10989 문제 풀이  (0) 2024.11.10
백준 C# 19532 문제 풀이  (3) 2024.11.09