본문 바로가기
PS 문제 풀이/Baekjoon

[BOJ] 백준 10709 기상캐스터

by 까망 하르방 2021. 2. 25.
반응형

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

 Input 

3 4

c..c

..c.

....

 

 Output 

0 1 2 0

-1 -1 0 1

-1 -1 -1 -1

 

[구름의 움직임]

 

① 처음 구름이 있는 위치를 『0』 구름이 없는 위치를 『-1

② 한 행씩 오른쪽으로 탐색하면서 구름이 처음 있었던 위치이면 continue

    구름이 없는 위치라면 왼쪽 지점에서 구름이 보이는 시점 + 1 처리


#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
 
char map[100][100];
int W, H, board[100][100];
int main() {
    // freopen("input.txt", "r", stdin);
    int i, j;
 
    scanf("%d %d", &W, &H);
    for (i = 0; i < W; ++i) {
        scanf("%s", map[i]);
        for (j = 0; j < H; ++j) {
            if (map[i][j] == 'c') board[i][j] = 0;
            else board[i][j] = -1;
        }
    }
 
    for (i = 0; i < W; ++i) {
        for (j = 1; j < H; ++j) {
            if (board[i][j] == 0) continue;
            else if (board[i][j - 1] >= 0) board[i][j] = board[i][j - 1] + 1;
        }
    }
 
    for (i = 0; i < W; ++i) {
        for (j = 0; j < H; ++j) {
            printf("%d ", board[i][j]);
        }
        printf("\n");
    }
}

 

반응형

댓글