[프로그래머스 C#] Lv.0 분수의 덧셈

김병찬·2022년 11월 2일
0

프로그래머스 Lv.0

목록 보기
7/100

🎯문제설명

첫 번째 분수의 분자와 분모를 뜻하는 denum1, num1, 두 번째 분수의 분자와 분모를 뜻하는 denum2, num2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.


❌제한사항

  • 0 <denum1, num1, denum2, num2 < 1,000

💬입출력 예

denum1num1denum2num2result
1234[5, 4]
9213[29, 6]

💬입출력 예 설명

입출력 예 #1

  • 1 / 2 + 3 / 4 = 5 / 4입니다. 따라서 [5, 4]를 return 합니다.

입출력 예 #2

  • 9 / 2 + 1 / 3 = 29 / 6입니다. 따라서 [29, 6]을 return 합니다.

🔥나의 풀이

public class Solution {
    public int[] solution(int denum1, int num1, int denum2, int num2) {
        int[] answer = new int[2];
        int temp = 0;
        int max = 0;
        int maxNum = 0;
        
        answer[0] = (num1 * denum2) + (num2 * denum1);
        answer[1] = num1 * num2;
        
        max = answer[0];
        
        for(int i = 1; i <= max; i++)
        {
            if(answer[0] % i == 0 && answer[1] % i ==0)
            {
                maxNum = i;
            }
        }
        
        answer[0] = answer[0] / maxNum;
        answer[1] = answer[1] / maxNum;
        return answer;
    }
}

출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

profile
[중요한건 꺾이지 않는 마음] Unity Developer

0개의 댓글