문제링크
풀이
T = int(input())
for test in range(1, T+1):
n, k = map(int, input().split())
arr = [list(map(int, input().split())) for _ in range(n)]
# con : 1의 개수 확인, res : k가 들어갈 수 있는 자리 개수
con = 0
res = 0
for i in range(n):
# 행
for j in range(n):
if arr[i][j] == 1:
con += 1
if arr[i][j] == 0 or j == n-1:
if con == k:
res += 1
con = 0
# 열
for j in range(n):
if arr[j][i] == 1:
con += 1
if arr[j][i] == 0 or j == n-1:
if con == k:
res += 1
con = 0
print(f"#{test} {res}")
행과 열을 따로 검사한다.
한 줄씩 읽으면서 1을 만나면 카운트에 추가, 0을 만나거나 한 줄의 끝일 때 카운트와 단어의 길이가 같은지 검사한다.
같으면 결괏값을 증가시킨다. 다음 줄 검사를 위해 카운트를 0으로 초기화한다.
'Problem Solving > SWEA' 카테고리의 다른 글
| [SWEA Java] 1868. 파핑파핑 지뢰찾기 (0) | 2022.11.12 |
|---|---|
| [SWEA Java] 2112. [모의 SW 역량테스트] 보호 필름 (0) | 2022.10.14 |
| [SWEA Python] 1983. 조교의 성적 매기기 (0) | 2022.07.06 |
| [SWEA Python] 1989. 초심자의 회문 검사 (0) | 2022.07.06 |
| [SWEA Python] 2001. 파리 퇴치 (0) | 2022.07.06 |