알고리즘/백준(BOJ)

[백준/알고리즘] #10709: 기상캐스터 [파이썬(python)/구현]

https://www.acmicpc.net/problem/10709

 

10709번: 기상캐스터

출력은 H 행으로, 각 행에는 공백으로 구분된 W 개의 정수를 출력한다. 출력의 i 번째 행 j 번째 정수 (1 ≦ i ≦ H, 1 ≦ j ≦ W) 는, 지금부터 몇 분후에 처음으로 구역 (i, j) 에 구름이 뜨는지를 표시

www.acmicpc.net

이런 구현문제는 계속 그려보거나 시뮬레이션하면서 풀면 된다. 

 

#10709_기상캐스터

H, W = map(int, input().split())

Wstring = []
for _ in range(H):
    Wstring.append(list(input()))

sky=[[-1]*W for _ in range(1,H+1)]

cnt=W
for k in range(0,W+1):
    for i in range(H):
        for j in range(W):
            if k==0:
                if Wstring[i][j]=='c':
                    sky[i][j]=0
            if k > 0:
                if i>-1 and j-1>-1:  
                    if sky[i][j-1]==k-1 and sky[i][j]!=0:                        
                        sky[i][j]=k
                
for i in range(H):
    for j in range(W):
        print(str(sky[i][j]), end=' ')
    print()