1236번: 성 지키기 (브론즈1, 구현)
문제
정답
입력받은 n개의 행에서 X가 있지 않은 행의 개수와
m개의 열에서 X가 있지 않은 열의 개수를 찾아서 최대값을 구하는 형태
n,m = map(int,input().split()) #n,m 입력
array = []
for _ in n:
array.append(input()) #n개의 행만큼 array 리스트 생성
a,b = 0,0 #a=행개수/b=열개수
for i in range(n): #행 한개씩 확인
if "X" not in array[i]: #X가 없으면 a에 1 더하기
a += 1 #X가 없는 총 행개수
for j in range(m): #열 한개씩 확인
if "X" not in [array[i][j] for i in array[n]]: #X가 없으면 b에 1 더하기
b += 1 #X가 없는 총 열개수
print(max(a,b)) #행이나 열 둘중 X가 있으면 되기 때문에, 최대값 구하기!
#만약 행, 열 둘다 X가 없어야한다면, 최소값 구하면 된다.
공부한 내용
1. 코드 간소화
아래 코드는 내가 시도하고자 했던 방향. 물론 오답이다.
아직도 n,m을 한꺼번에 지정하는 것에 익숙하지 않다. 예) a,b = 0,0
또한, append 되지 않고 가장 마지막 line list만 저장되기 때문에 오답이다.
X = list(map(int,input().split()))
n = int(X[0]) #행
m = int(X[1]) #열
line = [0]
for i in range(n):
line = list(map(str,input().split('/n')))
line.append
레퍼런스
- 다른 정답 풀이
- 정답 깃허브
'Algorithm > 구현' 카테고리의 다른 글
[Python3] 백준 1268번 임시 반장 정하기 (0) | 2023.01.05 |
---|---|
[Python3] 백준 1259번 팰린드롬수 (0) | 2023.01.04 |
[Python3] 백준 1193번 분수찾기 (0) | 2023.01.03 |
[Python3] 백준 1157번 단어 공부 (0) | 2022.12.29 |
[Python3] 백준 1145번 적어도 대부분의 배수 (0) | 2022.12.29 |
댓글