728x90
문제
https://www.acmicpc.net/problem/1018
코드
using System;
using System.Text;
using System.Collections.Generic;
namespace dongsik
{
class Algorithm
{
static void Main(string[] str)
{
int[] input = Array.ConvertAll(Console.ReadLine().Split(' '), int.Parse);
int n = input[0];
int m = input[1];
string[] board = new string[n];
int result = int.MaxValue;
for(int c = 0; c < n; c++)
{
board[c] = Console.ReadLine();
}
int cnt1 = 0;
int cnt2 = 0;
for(int i = 0; i <= n - 8; i++) // 행
{
for(int j = 0; j <= m - 8; j++) // 열
{
for(int p = 0; p < 2; p++) // 시작의 b, y판별
{
cnt1 = 0;
cnt2 = 0;
char start = p == 0 ? 'W' : 'B'; // 0으로 시작하면 start가 W이라고 가정 아니라면 B로 시작한다고 가정
for (int k = i; k < i + 8; k++)
{
for (int y = j; y < j + 8; y++)
{
if(start != board[k][y])
{
cnt1++;
}
start = start == 'W' ? 'B' : 'W'; // start값 업데이트
}
start = start == 'W' ? 'B' : 'W'; // start값 업데이트
}
}
cnt2 = 64 - cnt1;
int temp = Math.Min(cnt1, cnt2);
result = result > temp ? temp : result;
}
}
Console.Write(result);
}
}
}
고민
진짜 머리 터지는 줄 알았다. 그렇게 어려운 문제가 아니라던데 나는 왜이렇게 어렵지
'동식이 취업시키기 작전 > 코딩테스트' 카테고리의 다른 글
[백준] 2309번 일곱 난쟁이 (1) | 2024.01.30 |
---|---|
[백준] 1436 영화감독 숌(C#) (1) | 2024.01.29 |
[백준] 7568 덩치(C#) (1) | 2024.01.29 |
[백준] 1224 스위치 켜고 끄기(C#) (0) | 2024.01.29 |
[백준] 1541 잃어버린 괄호(C#) (1) | 2024.01.26 |