프로그래밍/알고리즘 풀이
[문자열 처리] 하얀 칸 (백준 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;
}
|
반응형