문제
알고리즘
- 반복문을 통해 사회자가 외친 빙고 번호를 0으로 초기화
- 가로, 세로, 대각선이 빙고인지 확인 후 빙고이면 카운트
- 카운트한 빙고가 3개 이상이라면 빙고를 부른 횟수를 출력 후 시스템 종료
코드
import sys
def solve(target, graph):
for i in range(5):
for j in range(5):
if target == graph[i][j]:
graph[i][j] = 0
return
def check(graph):
cnt = 0
for i in range(5):
temp = 0
for j in range(5):
if graph[i][j] == 0:
temp += 1
if temp == 5:
cnt += 1
for i in range(5):
temp = 0
for j in range(5):
if graph[j][i] == 0:
temp += 1
if temp == 5:
cnt += 1
if graph[0][4] == graph[1][3] == graph[2][2] == graph[3][1] == graph[4][0] == 0:
cnt += 1
if graph[0][0] == graph[1][1] == graph[2][2] == graph[3][3] == graph[4][4] == 0:
cnt += 1
return cnt
bingo = [list(map(int, sys.stdin.readline().split())) for _ in range(5)]
answer_bingo = [list(map(int, sys.stdin.readline().split())) for _ in range(5)]
answer = 0
for i in range(5):
for j in range(5):
answer += 1
solve(answer_bingo[i][j], bingo)
if check(bingo) >= 3:
print(answer)
exit()
github
'CodingTest > Baekjoon' 카테고리의 다른 글
[programers] 프로그래머스(코틀린) : 가장 큰 수 (0) | 2022.08.31 |
---|---|
[baekjoon] 백준 20291번(코틀린): 파일 정리 (0) | 2022.08.28 |
[baekjoon] 백준 20291번(파이썬): 파일 정리 (0) | 2022.08.28 |
[baekjoon] 백준 12933번(코틀린): 오리 (0) | 2022.08.27 |
[baekjoon] 백준 12933번(파이썬): 오리 (0) | 2022.08.25 |