SW
[백준 1236] 성 지키기 본문
0. 제목
- 백준 1236 성 지키기
- BOJ 1236 성 지키기
- Python 1236 성 지키기
1. 문제
https://www.acmicpc.net/problem/1236
2. 풀이
- 2차원 배열로 생각하여 풀면 되는 문제이다.
- 가장 먼저 n행, m열의 2차원 배열에 모두 0을 넣는다. 2차원 배열을 탐색하면서 X가 있는 곳에 1로 갱신한다.
- 그 후, 행과 열 각각 탐색하며 원소가 0인 경우 각각의 숫자(필요한 경비원 수)에 1씩 더한다.
- 행에서 필요한 경비원 수와 열에서 필요한 경비원 수 중 최대 값이 정답이 된다.
3. 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
n, m = map(int, input().split())
arr = []
for _ in range(n):
arr.append(input())
row = [0] * n
column = [0] * m
for i in range(n):
for j in range(m):
if arr[i][j] == 'X':
row[i] = 1
column [j] = 1
row_cnt = 0
for i in range(n):
if row[i] == 0:
row_cnt += 1
column_cnt = 0
for i in range(m):
if column[i] == 0:
column_cnt += 1
print(max(row_cnt, column_cnt))
|
'대학교 > Algorithm' 카테고리의 다른 글
[백준 1874] 스택 수열 (0) | 2020.09.03 |
---|---|
[백준 1302] 베스트 셀러 (0) | 2020.09.02 |
[백준 1668] 트로피 진열 (0) | 2020.08.30 |
[백준 1568] 새 (0) | 2020.08.25 |
[백준 1543] 문서 검색 (0) | 2020.08.24 |
Comments