728x90
사용언어 : Python
📋 문제 설명

🔑 문제 풀이
def solution(mats, park):
n = len(park)
m = len(park[0])
for size in sorted(mats,reverse=True):
for row in range(n-size+1):
for col in range(m-size+1):
place = True
for x in range(row,row+size):
for y in range(col,col+size):
if park[x][y]!='-1':
place=False
break
if not place:
break
if place:
return size
return -1
1. 행의길이 n ,열의 길이 m
2. 정렬로 mats 큰 거 부터 시도
3. park의 범위를 벗어나지않고 mat를 깔수있는 행과 열의 시작점을 기준으로 순회
4.시작점을 기준으로 size 정사각형 범위에 -1이 아니면 False
5. False면 break 후 시작점을 옮기면서 반복, true 면 현재 size return
https://school.programmers.co.kr/learn/courses/30/lessons/340198
728x90
'코딩테스트' 카테고리의 다른 글
| [프로그래머스] 택배 상자 꺼내기 (1) | 2025.05.03 |
|---|---|
| [프로그래머스] PCCP 기출문제 1번 / 동영상 재생기 (0) | 2025.05.02 |
| [프로그래머스] 유연근무제 (0) | 2025.04.30 |
| [프로그래머스] 롤케이크 자르기 (0) | 2025.04.27 |
| [프로그래머스] 프로세스 (0) | 2025.04.26 |