kakasoo

[문자열 처리] 하얀 칸 (백준 1100번) 본문

프로그래밍/알고리즘 풀이

[문자열 처리] 하얀 칸 (백준 1100번)

카카수(kakasoo) 2020. 3. 4. 12:40
반응형

(칸이라는 말을 들으면 유목민족이 먼저 떠오르는 건 이상한 걸까?)

 

 

가장 왼쪽 위 (0,0)이 하얀색이고, 하얀 색 위에 말이 몇 개 있는지 세라고 하니,

하얀 칸이 규칙성만 파악하면 되겠다.

가로 세로의 규칙을 파악해도 되겠지만 (가령 짝 짝 짝 짝 짝 짝- 줄이 바뀌면 홀 홀 홀 홀... 이런 식.)

(0,0) 다음에 (0,2), 다음 줄에서는 (1,1) 이런 식으로 진행되는 것을 보니

세로 가로의 합이 짝수면 하얀색이라는 걸 알 수 있겠다.

여기서부터는 그럼 간단하다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <string>
using namespace std;
 
char map[8][8];
 
int main(void)
{
    int count = 0;
    for (int i = 0; i < 8; i++)
    {
        for (int j = 0; j < 8; j++)
        {
            cin >> map[i][j];
            if ((i+j) % 2 == 0)
            {
                if (map[i][j] == 'F')
                {
                    count++;
                }
            }
        }
    }
 
    cout << count;
}
반응형