원래 BFS 문제를 다시 풀때마다 함수를 만들어내는게 꽤나 오래 걸렸는데 이젠 좀 익숙해진거 같다. 다만 은근히 문제들마다 조건이 달라서 까딱 잘못하면 조건을 만족시키기 못하는 경우가 있으니 이를 유의하는게 좋겠다. 이 문제를 풀면서 생각한 논리적 흐름은 다른 BFS 문제들과 비슷한 과정을 겪는다. 우선 Graph를 그려주고, 움직일 수 있는 방향을 설정해준다. 그리고 내가 해당 위치를 방문했는지 안했는지 visited 배열을 이용해 확인해준다. 이 문제의 경우 적록색약인 경우 R과 G를 동일하게 판단해야하고 적록색약이 아닌 경우 R G B를 각각의 값으로 봐주어야 하기 때문에 bfs 함수에도 이를 반영해야한다. 따라서 colorWeak이 true인 경우 RG를 묶어서 한번에 이동하고 false인 경우는..