내 오류 중복을 제거하고자 하는 목적의 반복문을 제대로 제어하지 못 했음 중복되는 특정부분을 continue로 넘겨버리겠다는 생각으로 i 인덱스를 중심으로 (앞)i-1 , (뒤) i+1을 비교해서 중복을 넘겨버리려고 했으나 오류. 급하게 풀어보면 이렇게 실수 하는 것 같다. 늘 반복문의 형식을 i =0 , i < n; 형식으로 할 것이라면 반복문을 쓰기전 생각을 좀 더 해야겠다. for (int i = 0; i < n; i++) { if (ss[i-1] == ss[i] && ss[i] == ss[i+1]) { continue; } cout
BOJ
만약~ 문제에 감이 안 잡힌다면, 생각할 점 1. 맨 처음 인덱스는 'W', 'B' 둘 중 하나다. 1.1 둘 중에 어떤 경우가 최소카운트가 나오는지 구해야한다. 1.2 N* M 에서 8 * 8 을 어떻게 쪼개서 최소 카운트를 확인하는지 생각한다. 헷갈리지 말아야할 것은 지금 위치가 w인지 b인지는 중요하지 않다는 것이다. 둘 중에 어떤게 와야 최소가 될지가 중요한것이다. 나는 이것을 간과해서 오래걸렸다. #include #include using namespace std; int BoardCheck(int x, int y, char arr[][50]) { int countB = 0; // 'B'로 시작할 경우 필요한 변경 횟수 int countW = 0; // 'W'로 시작할 경우 필요한 변경 횟수 f..