본문 바로가기
알고리즘 공부

백준 1018 체스판 다시 칠하기 [Brute Force]

by kjwkjw 2020. 5. 21.

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

 

1018번: 체스판 다시 칠하기

첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다.

www.acmicpc.net

#include <iostream>
#include <vector>

using namespace std;


char arr[51][51];
int mn=2501;

int main(int argc, char** argv)
{
    ios::sync_with_stdio(false); 
    cin.tie(NULL); 
    cout.tie(NULL);
    int n,m,cnt,a,b;
    char pre;
    cin>>n>>m;
    for (int i = 0; i < n; ++i)
    {
        for (int j = 0; j < m; ++j)
        {
            cin>>arr[i][j];
        }
    }
    for (int k = 0; k <= n-8; ++k)
    {
        for (int l = 0; l <= m-8 ; ++l)
        {
            for (int p = 0; p < 2; ++p)
            {
                for (int i = k; i < k+8; ++i)
                {
                    for (int j = l; j < l+8; ++j)
                    {
                        if(i==k&&j==l)
                        {
                            if(p==0) pre = 'W';
                            else pre = 'B';
                        }

                        if(pre==arr[i][j]){
                            cnt++;
                            if(pre=='B')
                            {
                                if(j!=l+7)pre='W';
                            }
                            else
                            {
                                if(j!=l+7)pre='B';
                            }
                        }
                        else
                        {
                           if(j!=l+7) pre = arr[i][j]; 
                        }
                    }
                }
                if(cnt<mn){
                    mn = cnt;
                    a = k;
                    b = l;
                }
                cnt = 0; 
            }    
        }
    }
    cout<<mn<<"\n";
    return 0;
}  

'알고리즘 공부' 카테고리의 다른 글

백준 1037 약수  (0) 2020.05.21
백준 1026 보물[sort]  (0) 2020.05.21
백준 1012 유기농배추 [BFS]  (0) 2020.05.16
백준 1011 Fly me to the Alpha Centauri [Greedy]  (0) 2020.05.16
백준 1009 분산처리  (0) 2020.05.16

댓글