반응형
문제:
https://www.acmicpc.net/problem/1236
풀이:
이 문제는 해결 아이디어를 잘 생각할 필요가 있었다. 나는 접근을 잘못했고 결국 스스로 해결하지 못했다.
모자란 경비원의 수를 세는 아이디어는
행 기준, 열 기준으로 경비원이 필요한 수를 각각 계산해 더 큰 값을 출력하는 것이다.
col, row = map(int, input().split()) castle = [] for _ in range(col): castle.append(input()) a, b = 0, 0 for i in range(col): if "X" not in castle[i]: a += 1 for j in range(row): if "X" not in [castle[i][j] for i in range(col)]: b += 1 print(max(a, b))
이 코드를 보면 리스트 내포(List comprehension)을 사용한 것을 볼 수 있다.
문제를 풀면서 탐색을 어떻게 할지에 대해 고민을 많이 했는데, 리스트 내포를 사용하면 아주 간단하게 할 수 있었다.
리스트 내포를 잘 기억해두고 사용할 수 있도록 하자.
반응형
'Python 코딩테스트' 카테고리의 다른 글
DFS/BFS: 백준 2606 파이썬 (0) | 2021.08.18 |
---|---|
DFS/BFS: 백준 16173 파이썬 (0) | 2021.08.12 |
구현: 백준 2851 파이썬(Python) (0) | 2021.08.03 |
구현: 백준 1157 파이썬(Python) (0) | 2021.08.03 |
구현: 백준 2750 파이썬(Python) (0) | 2021.08.03 |