[Python 문제풀이] 18일차
2020. 7. 26. 11:00ㆍ03. Resources/Python
728x90
반응형
Day_18
Intro
Q24. Mindsweeper
In the popular Minesweeper game you have a board with some mines and those cells that don't contain a mine have a number in it that indicates the total number of mines in the neighboring cells. Starting off with some arrangement of mines we want to create a Minesweeper game setup.
알고리즘 고민, 및 러프한 코드 작성 중!
작성 흐름
# Test case
import numpy as np
matrix = [[True, False, False],
[False, True, False],
[False, False, False]]
# 알고리즘 생각해보기
# 만약 현재 값이 true인 경우, 현재 인덱스의 값은 1
# 만약 현재 값이 false인 경우, 현재 인덱스의 값은 현재 위치 값의 주위에 true 개수
row = len(matrix)
col = len(matrix[0])
MineCounterMat = np.zeros((row, col))
print(row)
print(col)
for idx_row in range(row):
for idx_col in range(col):
MineCounter = 0
CurrVal = matrix[idx_row][idx_col]
if idx_row == 0:
idx_row_set = [idx_row, idx_row + 1]
if idx_row == row:
idx_row_set = [idx_row - 1, idx_row]
if idx_col == 0:
idx_col_set = [idx_col, idx_col + 1]
if idx_col == col:
idx_col_set = [idx_col - 1, idx_col]
print(idx_row_set)
print(idx_col_set)
for mine_row in idx_row_set:
for mine_col in idx_col_set:
if matrix[mine_row][mine_col]:
print(mine_row)
print(mine_col)
MineCounter = MineCounter + 1
MineCounterMat[idx_row][idx_col] = MineCounter
print(MineCounterMat)
반응형
'03. Resources > Python' 카테고리의 다른 글
[Python/SQL] PyMySQL - 패키지 설치 (0) | 2021.08.21 |
---|---|
[Python 문제풀이] 19일차 (끝) (0) | 2020.07.27 |
[Python 문제풀이] 17일차 (0) | 2020.07.25 |
[Python 문제풀이] 16일차 (0) | 2020.07.24 |
[Python 문제풀이] 15일차 (0) | 2020.07.23 |