99클럽 코테 스터디 21일차 TIL - 프로그래머스[카펫]

박예슬·2024년 11월 17일
0

99club-study

목록 보기
21/33


문제 풀이

오늘의 문제 - 프로그래머스.카펫

나의 풀이

class Solution {
    public int[] solution(int brown, int yellow) {
        int[] answer = new int[2];
 
        int carpet = brown + yellow;
 
        // yellow가 존재하기 위해서는 가로와 세로의 길이가 3이상이여야 한다.
        for (int i = 3; i <= carpet; i++) {
            int col = i; // 세로
            int row = carpet / col; // 가로
 
            // 가로의 갯수가 3 이하라면 다음 인덱스
            if (row < 3) {
                continue;
            }
 
            // "가로는 세로의 길이보다 크거나 같다" 조건
            if (row >= col) {
                if ((row - 2) * (col - 2) == yellow) {
                    answer[0] = row;
                    answer[1] = col;
                    break;
                }
            }
        }
        return answer;
    }
}
profile
공부중인 개발자

0개의 댓글