코딩테스트

[Python] 코딩도장 23.7 지뢰찾기

dackyy 2022. 7. 27. 16:37
반응형

bomb = []
row, column = map(int, (input().split()))
for i in range(row):
    temp = input()
    bomb.append(list(temp)) # 입력된 값을 차례로 리스트에 저장

for i in range(row):
    for j in range(column):
        bombcnt = 0
        if bomb[i][j] == "*": # 현재 값이 지뢰면 지뢰를 출력하고 다음 반복
            print("*",end="")
            continue
        if j-1 >= 0:
            if(bomb[i][j-1] == '*'): # 현재 좌표 (x, y-1)의 지뢰탐색
                bombcnt += 1
            if i+1 <= column-1:		 # 현재 좌표 (x+1, y-1)의 지뢰탐색
                if(bomb[i+1][j-1] == '*'):
                    bombcnt += 1
                    
        if j+1 <= column-1:			 # 현재 좌표 (x, y+1)의 지뢰탐색
            if(bomb[i][j+1] == '*'):
                bombcnt += 1
            if i-1 >= 0:			 # 현재 좌표 (x-1, y+1)의 지뢰탐색
                if(bomb[i-1][j+1] == '*'):
                    bombcnt += 1
                    
        if i-1 >= 0:				 # 현재 좌표 (x-1, y)의 지뢰탐색
            if(bomb[i-1][j] == '*'):
                bombcnt += 1
            if j-1 >= 0:			 # 현재 좌표 (x-1, y-1)의 지뢰탐색
                if(bomb[i-1][j-1] == '*'):
                    bombcnt += 1
                    
        if i+1 <= column-1:			 # 현재 좌표 (x+1, y)의 지뢰탐색
            if(bomb[i+1][j] == '*'):
                bombcnt += 1
            if j+1 <= column-1:		 # 현재 좌표 (x+1, y+1)의 지뢰탐색
                if(bomb[i+1][j+1] == '*'):
                    bombcnt += 1
                
        print(bombcnt ,end="")		#합산 지뢰 출력
    print()
반응형