문제
나의 해답
class Solution {
public int[] solution(int numer1, int denom1, int numer2, int denom2) {
int a = denom1* denom2;
int b = numer1 * denom2;
int c = numer2 * denom1;
int sum = b+c;
int s = 0;
for(int i = 1; i<=sum; i++){
if(a%i==0 && sum%i==0){
s = i;
}
}
int n = a/s;
int m = sum/s;
int[] answer = {m, n};
return answer;
}
}
해설
- int a : 분모
- int b : 첫번째 분자
- int c : 두번째 분자
- int sum : 첫번째 분자와 두번째 분자를 더해서 나온 최종 분자
- int s : for문을 통해 a와 sum의 최대 공약수 계산
- 계산된 최대 공약수 s를 a와 sum에 나누어 분모 n과 분자 m을 계산
- m과 n을 배열로 반환
Share article