2월 12일

vrslxowe·2024년 2월 12일

프로그래머스

목록 보기
7/8

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

문제 해석
인자로 넘어온 numer에는 분자 denom에는 분모가 담긴다 두 분수를 더한 값을
기약분수(분모와 분자가 1이외의 공통된 인수를 갖지 않을 때의 분수)로 나타냈을 때 분자 분모를 순서대로 담은 배열 리턴하라

class Solution {
    public int[] solution(int numer1, int denom1, int numer2, int denom2) {
        int[] answer = {};
        return answer;
    }
}

코드 해석
솔루션 클래스 안에 정수들만 담을 수 있는 매개변수 4개를 가진 솔루션 메서드가 있다
정수들만 담을 수 있는 answer 변수를 선언하고 초기화한다 answer값을 리턴한다

문제 해결 과정
입출력 예를 들었을 때 먼저 풀어보았다

numer1denom1numer2denom2result
12345, 4
921329, 6

분수끼리 더하려면 분모들의 최소공배수를 찾아야한다
최소공배수를 찾았으면 분모의 최소공배수가 나오게 된 숫자를 분자에 곱해준다

0개의 댓글