728x90
내가 해멧던 부분
처음에 board[i][j] 랑 board[i][j+1] 를 검사하는 방향으로 생각했는데 이렇게 되면 중접되서 . 을 확인하는게 되어버리니.. 잘못된 풀이다
그리고 파이썬이 아직 덜 익숙한지라, 배열 입력받는게 헷갈렸다. 이번에는 띄워쓰기 없이 그냥 입력받아야 하는데
list(input()) 으로 해도 괜찮고
아래 풀이처럼 이 경우는 바로 입력받은 한줄을 append해도 괜찮다 !
#1652 백준
board = [] # 2차원 배열
n = int(input()) # n*n 길이 입력받기
for i in range(n):
board.append(input()) # 배열 입력받기
col_result = 0 # 세로 결과
row_result = 0 # 가로 결과
# 가로의 경
for i in range(n):
cnt = 0
for j in range(n):
if board[i][j] == '.':
cnt += 1
elif board[i][j] == 'X':
if cnt >= 2:
row_result += 1
cnt = 0 # 다시 초기화를 해줘서 쓸수있게 함
if j == n-1:
if cnt >= 2:
row_result += 1
#세로의 경우
for i in range(n):
cnt = 0
for j in range(n):
if board[j][i] == '.':
cnt+=1
elif board[j][i] == 'X':
if cnt >= 2:
col_result += 1
cnt = 0
if j == n-1:
if cnt >= 2:
col_result += 1
print(row_result, col_result)
728x90
'Algorithm (PS)' 카테고리의 다른 글
[프로그래머스/카카오] 외벽점검 (0) | 2021.10.31 |
---|---|
백준 15868 치킨배달 파이썬, 삼성 SW 기출문제 (0) | 2021.10.26 |
백준 1697 숨바꼭질 파이썬 풀이 (0) | 2021.09.07 |
백준 1074 파이썬 - Z (2) | 2021.09.07 |
백준 알고리즘 2108 통계학 (python) (0) | 2021.07.29 |