Algorithm/Programmers

[C#]프로그래머스 120808 분수의 덧셈 - Hide

zz0zz9 2025. 4. 24. 23:59
반응형
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/120808

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

문제 요약

두 분수의 분자와 분모를 각각 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열 반환하는 함수 만들기

 

 

 

풀이
using System;

public class Solution {
    public int[] solution(int numer1, int denom1, int numer2, int denom2) {
        int[] answer = new int[2];
        
        answer[0] = numer1 * denom2 + numer2 * denom1;
        answer[1] = denom1 * denom2;
        
        int g = GCD(answer[0], answer[1]);
        
        if (g != 1)
        {
            answer[0] /= g;
            answer[1] /= g;
        }

        return answer;
    }
    
    public int GCD(int n, int m)
    {
        if (m == 0) return n;
        else return GCD(m, n % m);
    }
}

한때는 저런 코드가 예뻐보였지

반응형