col,row = map(int,input().split())
matrix=[]
for i in range(row):
matrix.append(list(input()))
i=0
while i<col:
j=0
while j<row:
num=0
if matrix[i][j] != '*':
for a in range(i-1,i+1):
for b in range(j-1,j+1):
if matrix[a][b] == '*':
num+=1
matrix[i][j] = num
print(matrix[i][j], end='')
j+=1
print()
i+=1
지뢰찾기 문제에서 이렇게 코딩을하고 실행을 시키면 주위 지뢰갯수가 정확하게 나오지않아서 어떤부분을 수정해야할지 질문드립니다.
코드는 col과 row변수를 입력받고, i와 j변수를 이용해서 행렬 한개씩을 비교하며 *이 입력되지 않은부분을 찾아낸 후, 좌우 원소 하나씩 그리고 위 아래 원소 하나씩을 비교하면서 num변수를 1씩 증가시켜가며 지뢰갯수를 계산하였습니다.
혹시 도움을 주실 수 있으시면 감사하겠습니다.
포럼 상단 오른쪽에 23.7로 검색하면 이전 질문과 답변을 참조할 수 있습니다.
코드를 단계별로 실행하고 싶다면 포럼 상단에 고정된 파이썬 온라인 시각화나 Thonyy를 이용해서 단계별로 실행하면서 살펴보세요. 그러면 해결의 실마리를 찾을 수 있을 겁니다.
코드에 대한 도움은 어렵습니다. 문제가 어려우면 패스하고 다음 단원을 학습하고, 언젠가 파이썬에 익숙해졌을 때 다시 도전하세요.