t = int(input())
for tc in range(1,t+1):
n, k = map(int,input().split())
#리스트 내포 방식 활용 입력
puzzle = [list(map(int, input().split())) for _ in range(n)]
result = 0
for i in range(n):
cnt = 0
# 가로 검사
for j in range(n):
if puzzle[i][j] == 1:
cnt += 1
#벽을 만났을 때 그동안 쌓은 값이 k라면 단어가 들어갈 수 있는 조건 이기에 한 번더 살펴본다.
if puzzle[i][j] == 0 or j == n-1:
if cnt == k:
result += 1
cnt = 0 #cnt를 초기화해주어야 함.
for j in range(n):
if puzzle[j][i] == 1:
cnt += 1
if puzzle[j][i] == 0 or j == n-1:
if cnt == k:
result += 1
cnt = 0
print(f'#{tc} {result}')
# 가로(행) 세로(열)만 제대로 살펴보면 어렵지 않은 문제
# 벽을 만났을 때 그동안 쌓은 값이 k길이 만큼일 수 있기에 그 부분을 신경써서 살펴보면 됨.
# 벽을 만날 조건은 0을 만난 경우와 행이나 열의 끝부분에 닿았을 때. 즉 n-1일때 다음열 다음행으로 넘어가기 때문.
# cnt초기화는 당연히 해주어야 한다
'문제풀이 > SW Expert Academy' 카테고리의 다른 글
[SWEA][D2] 1970. 쉬운 거스름돈 (파이썬/Python) (0) | 2021.09.02 |
---|---|
[SWEA][D2] 1974. 스도쿠 검증 (파이썬/Python) (0) | 2021.09.01 |
[SWEA][D2] 1976. 시각 덧셈 (파이썬/Python) (0) | 2021.08.31 |
[SWEA][D2] 1983. 조교의 성적 매기기 (파이썬/Python) (0) | 2021.08.31 |
[SWEA][D2] 1984. 중간 평균값 구하기 (파이썬/Python) (0) | 2021.08.28 |