생각보다 생각을 해야하는 문제였다!
(1, 1)위치에서부터 탐색을 하며, 내 기준 ( 위, 왼쪽, 왼쪽위 ) 총 세 칸을 확인하고, 그들 중 최솟값이 1 이상인 경우에 그 값을
현재 내 칸에 더해준다.
1 1
1 1 과 같은 경우에는
1 1
1 2 가 될 것이다.
즉 한 변 길이가 2인 정사각형이 되었다라는 뜻!
2 3
2 1 인 경우에는 어떻게 될까? 이 경우는
현재 칸인 1에 주변 세 블록 중 최솟값인 2를 더해 3이 되어야하고,
실제로도 노란색으로 칠한 3*3 크기의 정사각형이 존재함을 확인할 수 있다!
또 한가지 주의해야할 점은
1. 모든 칸이 0으로 채워져있을 때, 0을 return해야하고,
2. 1이 하나라도 존재할 경우, answer를 일단 1로 갱신해주어야한다.
이 두가지만 처리해준다면, 풀이를 완성할 수 있는 문제였다!
2019 카카오 개발자 겨울 인턴십 : 크레인 인형뽑기 게임 (Swift) (0) | 2022.06.22 |
---|---|
2019 KAKAO BLIND RECRUITMENT : 실패율 (Swift) (0) | 2022.06.22 |
2020 카카오 인턴십 : 키패드 누르기 (Swift) (0) | 2022.06.18 |
2021 카카오 채용연계형 인턴십 : 숫자 문자열과 영단어 (0) | 2022.06.18 |
2021 Dev-Matching 웹 백엔드 : 로또의 최고 순위와 최저순위 (Swift) (0) | 2022.06.18 |