본문 바로가기

알고리즘

[LEETCODE] 51. N-Queens

문제 출처 : https://leetcode.com/problems/n-queens/submissions/

사용한 알고리즘

  • backtracking

 

풀이로직

  • ㄴㅇㄹㅇㄴ
  • ㄴㅇㄹ

 

코드

 

어려웠던 점

  • backtracking 문제를 간만에 풀어 어려웠고, 이걸 한번에 어떻게 처리하고 다시 돌릴지 고민을 많이했습니다.
  • 제가 푼 과정이 N-Queens의 갯수를 세는 것을 빠르게 할 수 있는 코드였기 때문에 모든 경우를 넣은 후 다시 올바른 형태로 바꿔 집어넣어야했다.
  • board를 바꿔가면서 진행하는데, answer에 넣고나면 그 board를 이용해 바꾸는 것이기때문에 최종값에 계속 초기 board값이 들어갔다 -> board가 계속 바뀌기 때문에 answer의 board도 함께 바뀌는것이다!
    • deepcopy를 이용해서 고정시킨 값을 넣어야한다.