코딩하는 해맑은 거북이

[Python] 바탕화면 정리 - 프로그래머스 본문

코딩테스트

[Python] 바탕화면 정리 - 프로그래머스

#CJE 2023. 3. 10.
해당 글은 프로그래머스 문제 '바탕화면 정리'을 다룬다.

문제

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

설명

해당 문제는 문서들 중 왼쪽 꼭짓점이 최소가 되는 값과 오른쪽 꼭짓점이 최대가 되는 값을 구하면 되는 문제이다.

wallpaper의 길이가 1이상 50이하이므로, 변수를 설정할 때 min값은 51, max값은 0으로 설정한다.

그리고 for문을 돌려 나온 i, j는 행렬을 의미하고 왼쪽 꼭짓점의 값이므로

max값을 구할 때는 +1을 한 값을 비교해야한다.

 

코드

def solution(wallpaper):
    answer = []
    min_x, min_y, max_x, max_y = 51, 51, 0, 0
    for i, s in enumerate(wallpaper):
        for j, word in enumerate(s):
            if word == '#':
                min_x = min(min_x, i)
                min_y = min(min_y, j)
                max_x = max(max_x, i+1)
                max_y = max(max_y, j+1)
    answer = [min_x, min_y, max_x, max_y]
    return answer

     

 

 

Comments