[백준][C++] 17471번: 게리맨더링 <167>


[백준][C++] 17471번: 게리맨더링 <167>

직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. 생각의 흐름 우선 각 지역을 2개의 선거구 중 하나로 나누기 위해 조합을 사용하였다. DFS() 방식으로 돌면서 해당 지역에서 선거구 하나를 택하게 구현하였다. 이렇게 team을 정해가다가, N개의 팀이 다 정해졌을때! 선거구가 2개로 잘 나뉘어 졌는지 확인하면 된다. 선거구가 나뉘어 졌는지 확인하는 함수를 isOk()로 따로 구현하였다. 전체 지역을 BFS로 한번씩 방문하는 것 이다. 만약 선거구가 2개로 잘 분리됬다면 BFS는 총 2번만 호출되야 한다. 1) 3번 이상 호출되면 오류 처음 0번 선거구 BFS 때 0번은 전부 방문처리 되고, 그 다음 1번 선거구..........

[백준][C++] 17471번: 게리맨더링 <167>에 대한 요약내용입니다.

자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.



원문링크 : [백준][C++] 17471번: 게리맨더링 &lt;167&gt;