알고리즘 문제 풀이: 파이썬/BOJ

[BOJ_2578] 빙고

hueco 2022. 3. 4.

 

문제 링크: https://www.acmicpc.net/problem/2578

 

2578번: 빙고

첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로

www.acmicpc.net

 

내 풀이:

 

Review:

 약 두 달만의 알고리즘 문제 풀이라서 그런지 구현의 아이디어를 떠올리는 것을 어렵지 않았지만, 코드로 구현하는 데 시간이 꽤 걸렸다.

문제를 풀면서 빙고의 개수를 확인하는 부분을 어떻게 구현할지 고민했는데, 어렵게 생각하지 않고 단순하게 생각하니 의외로 쉽게 해결할 수 있었다.

 

Idea:

 1. 1~5번째 줄의 입력값을 철수의 빙고판(bingo_board)으로 저장

 2. 6~10번째 줄의 입력값을 사회자가 부르는 숫자(chk_board)로 저장

 3. 사회자가 숫자를 하나씩 부를때마다 chk_num을 하나씩 증가시키고, 해당 수를 철수의 빙고판에서 0으로 바꾼다.

 (이때 0이 아닌 1과 25사이의 범위의 수를 제외한 나머지 숫자로 변경해도 무방하다.)

 4. 철수의 빙고판에서 가로줄, 세로줄, 두 개의 대각선에서 빙고가 있는지 확인한다.

 5. 3개의 빙고가 나오면 chk_num을 출력하고, 프로그램을 종료한다.

'알고리즘 문제 풀이: 파이썬 > BOJ' 카테고리의 다른 글

[BOJ_1904] 01타일  (0) 2022.03.23
[BOJ_9461] 파도반 수열  (0) 2022.03.23
[BOJ_1107] 리모컨  (0) 2022.01.14
[BOJ_1159] 농구 경기  (0) 2022.01.08
[BOJ_2744] 대소문자 바꾸기  (0) 2022.01.08

댓글