본문 바로가기

Algorithm/Design Paradigm

[BOJ] 1018번 체스판 다시 칠하기

브루트포스

두서없이 풀어버린 경향이 있는데 좀 더 쉽게도 접근이 될 듯하다.

{WBWBWBWB

BWBWBWBW

WBWBWBWB

BWBWBWBW

WBWBWBWB

BWBWBWBW

WBWBWBWB

BWBWBWBW}

같은 배열을 미리 만들어두고 비교를 해도 좋을 듯.

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
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <bits/stdc++.h>
using namespace std;
 
int main() {
    int n, m, int_chk1=0, int_chk2=0 ,res=99999;
    char chk1 = 'W';
    char chk2 = 'B';
    char arr[55][55];
    scanf("%d %d"&n, &m);
    for (int i = 0; i < n; i++)
        scanf("%s", arr[i]);
 
    for (int i = 0; i < n - 7; i++) {
        for (int j = 0; j < m - 7; j++) {
            for (int k = i; k < i + 8; k++) {
                for (int l = j; l < j + 8; l++) {
                    char tmp;
                    if (arr[k][l] != chk1)
                        int_chk1++;
                    tmp = chk1;
                    chk1 = chk2;
                    if (arr[k][l] != chk2)
                        int_chk2++;
                    chk2 = tmp;
                }
                char tmp;
                tmp = chk1;
                chk1 = chk2;
                chk2 = tmp;
            }
            if (res > min(int_chk1, int_chk2))
                res = min(int_chk1, int_chk2);
            int_chk1 = 0;
            int_chk2 = 0;
        }
    }
    printf("%d", res);
    return 0;
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
 
14134935 zl0siwon0lz 1018 맞았습니다!! 1988 0 C++14 / 수정 764 52분 전

'Algorithm > Design Paradigm' 카테고리의 다른 글

[BOJ] 1107 리모컨  (0) 2019.07.30
[BOJ] 1436번 영화감독 숌  (0) 2019.07.25
[BOJ] 7568번 덩치  (0) 2019.07.25
[BOJ] 2231번 분해합  (0) 2019.07.25
[BOJ] 2798번 블랙잭  (0) 2019.07.25