96631 [백준 9663/c++] N-Queen 백트래킹 심화 문제. 푸는 방법은 2가지가 자주 쓰인다 첫번째로, 조건을 판단할 함수를 만드는 방법 퀸은 위 아래 대각선에 영향을 주므로 퀸의 위치들을 배열에 넣은 후 배열을 돌며 놓을 수 있는지 여부를 판단할 함수를 만들어서 푸는 방법 퀸의 위치를 나타내는 배열을 나타낼 시 배열 내 요소의 인덱스를 열로, 요소의 값을 행으로 나타내서 2차원 배열이 아닌 1차원 배열만으로 퀸의 위치를 표현 가능하다 간단하지만, 배열을 돌며 여부를 체크해야 하므로, 시간복잡도가 추가로 O(n) 가 소모된다 두번째로, 함수대신 퀸이 영향력을 줄 수 있는 라인들을 배열로 저장해서 이전의 isused 체크처럼 사용하여 퀸을 놓을 수 있는지 체크하여 푸는 방법이다 배열의 크기를 40 으로 설정했는데, 가로가 n칸 일때 열의 인덱.. 2022. 8. 4. 이전 1 다음