카펫

LJM·2023년 4월 25일
0

programmers

목록 보기
33/92

https://school.programmers.co.kr/learn/courses/30/lessons/42842

이런 문제들이 오히려 어렵다. 완전탐색이라고 미리 알지 못했다면 풀지 못했거나 시간이 한참걸려서 완전탐색으로 가능하구나란걸 알 수 있을거 같다.

-갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다.
-노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수입니다

왜냐면 문제의 제한사항을 보고 단순히 brown * yellow 이면 엄청큰 숫자인데 시간초과 나겠구나 생각하고 완전탐색은 안되겠네 생각하기 쉽상이다

class Solution {
    public int[] solution(int brown, int yellow) {
        int[] answer = {};
        
        
        int sum = brown + yellow;
        for(int x = 3; x < 2500; ++x)
        {
            for(int y = 3; y < 2500; ++y)
            {
                if(x*y == sum
                  && (x-2)*(y-2) == yellow)
                {
                    answer = new int[2];
                    answer[0] = x;
                    answer[1] = y;
                    break;
                }
            }
        }
        
        
        return answer;
    }
   
}
profile
게임개발자 백엔드개발자

0개의 댓글