[알고리즘 문제풀이] 성 지키기

황인권·2023년 3월 23일
0

알고리즘 문제풀이

목록 보기
23/81

문제 제목 : 성 지키기

문제 난이도 : 하

문제 유형 : 탐색

https://www.acmicpc.net/problem/1236
시간 제한 : 2초
메모리 제한 : 128MB

문제풀이 아이디어

  1. 모든 행과 열의 한명 이상의 경비원이 있어야 한다.
  2. 성의 크기 N, M 은 50이하의 자연수
    -> 경비원이 없는 행과 열을 모두 구한뒤 그 중에서 큰 값을 선택하면 모든 행과 열에 추가가 가능하다.

< 소스코드 >

n, m = map(int, input().split())
array = []

for _ in range(n):
    array.append(input())
    
row = [0] * n
column = [0] * m

# x 표시가 있는 행,열
for i in range(n):
    for j in range(m):
        if array[i][j] == "X":
            row[i] = 1
            column[j] = 1

# x표시가 없는 행 갯수 카운트   
row_count = 0
for i in range(n):
    if row[i] == 0:
        row_count += 1
      
# x표시가 없는 열 갯수 카운트
column_count = 0
for j in range(m):
    if column[j] == 0:
        column_count += 1
        
print(max(row_count, column_count))
profile
inkwon Hwang

0개의 댓글