SWEA/삼성SW역량테스트 C++
[SW Test 샘플문제] 프로세서 연결하기
IamToday
2020. 4. 15. 22:51
* dfs 조합을 이용해서 최대한 많은 core들을 연결했을 때 최소 전선의 길이를 구한다.
* 맵의 사이드에 있는 코어들은 이미 연결되어있기 때문에 cores에는 그 외의 코어들을 넣는다.
* dfs(idx, cnt)에서는 코어들을 조합을 확인하면서 백트래킹한다.
*
check(x, y, d) : x, y 좌표에 있는 코어가 d방향으로 연결될 수 있으면 T, 아니면 F
doConnect(x, y, d) : check() 가 T라면 연결한다. (chk 배열에 방문표시)
doDisConnect(x, y, d) : 원상 복귀 (백트래킹)