level 1으로 했어도 무방한 문제! 간단해서 풀기 쉬웠다.
이 문제를 풀면서 2차원 ArrayList를 처음 사용해보았는데 직관적이라 좋다.
(1) yellow에 대해 a*b=yellow인 자연수 a, b쌍을 구한다.
(2) 2a+2b+4=brown인 a, b를 찾아 return
import java.util.*;
class Solution {
public int[] solution(int brown, int yellow) {
int[] answer = {};
ArrayList<int[]> inner = new ArrayList<>();
for(int i=1; i<=Math.sqrt(yellow); i++){
if(yellow%i==0){
int j = yellow/i;
if(i >= j){
inner.add(new int[]{i, j});
} else {
inner.add(new int[]{j, i});
}
}
}
for(int i=0; i<inner.size(); i++){
int[] temp = inner.get(i);
if(2*temp[0] + 2*temp[1] + 4 == brown){
temp[0] += 2;
temp[1] += 2;
return temp;
}
}
return answer;
}
}