KEEP GOING
[python] SWEA : 어디에 단어가 들어갈 수 있을까 본문
반응형
[문제 풀이]
for tc in range(1, int(input())+1):
answer = 0
n, k = map(int, input().split())
board = [list(map(int, input().split())) for _ in range(n)]
# 가로 체크
for i in range(n):
for j in range(n-k+1):
check = 0
# 가로로 k개 검사
for b in range(j, j+k):
if board[i][b]:
check += 1
# k개가 1인 경우
if check == k:
# 양 옆에 하나라도 1이 있는 경우 무시
if j-1 >= 0 and board[i][j-1]:
continue
if j+k < n and board[i][j+k]:
continue
answer += 1
# 세로 체크
for i in range(n-k+1):
for j in range(n):
check = 0
# 세로로 k개 검사
for a in range(i, i+k):
if board[a][j]:
check += 1
# k개가 1인 경우
if check == k:
# 양 옆에 하나라도 1이 있는 경우 무시
if i-1 >= 0 and board[i-1][j]:
continue
if i+k < n and board[i+k][j]:
continue
answer += 1
print(f'#{tc}', answer)
반응형
'code review > implementation' 카테고리의 다른 글
[python] SWEA : 파리퇴치 (0) | 2022.07.01 |
---|---|
[python] 프로그래머스 67257번 : 수식 최대화 (재귀 함수) (0) | 2022.04.29 |
[python] 백준 3048번 : 개미 (0) | 2022.04.25 |
[python] 프로그래머스 64061번 : 크레인 인형뽑기 게임 (slicing) (0) | 2022.04.03 |
[python] 프로그래머스 17681번 : 비밀지도(bin, zip, replace) (0) | 2022.04.01 |
Comments