백트래킹

문제: https://www.acmicpc.net/problem/18428 문제에 주어지는 NxN 크기의 맵에서, N의 범위가 (3 ≤ N ≤ 6)이다.이를 보면, 경우의 수가 굉장히 적기 때문에 브루트포스 알고리즘을 통해 풀 수 있음이 증명된다. 장애물은 비어있는 공간에만 설치할 수 있으므로, 모든 빈칸의 좌표를 벡터에 저장한다.장애물이 3개가 들어갈 수 있는 모든 경우의 수를 탐색(3중 for문) 각 장애물을 놨을 때의 모든 선생님의 위치에서 가로 세로로 확인하여 학생과 만나는지 확인한다.학생과 만나면 바로 반환하고, 함수가 끝날 때 까지 학생과 만나지 못하면 해당 장애물이 정답이므로 끝낸다.#include #include using namespace std;int dy[]{ -1, 0, 1, 0 }..
주으기
'백트래킹' 태그의 글 목록