지뢰 찾기 해결사를 만들려고합니다. 알 수 있듯이 지뢰밭의 어느 필드를 열어도 안전할지 결정하거나 채굴 된 필드를 결정하고 플래그를 지정해야하는 2 가지 방법이 있습니다. 결정하는 첫 번째 방법은 간단하다 우리는 다음과 같이 있습니다지뢰 찾기의 알고리즘 솔루션
경우 (광산의 수를 약 X - X의 주위에 발견 된 광산의 현재 수) X 주위 모든 개봉 필드
을 채굴 한 후 X 주위 개봉 필드 = 수경우 (X 주변 광산의 수 == X의 주위에 발견 된 광산의 현재 숫자)를 X 주위 모든 개봉 필드는
을 채굴하지 않습니다하지만 내 질문은 : 우리가 어떤 채굴 찾을 수 없을 때 상황에 대해 어떤 또는 안전한 분야와 우리는 1 개 이상의 분야를 볼 필요가 있습니까? 예를 들어
http://img541.imageshack.us/img541/4339/10299095.png
이 상황. 이전 방법으로는 아무 것도 결정할 수 없습니다. 그래서이 경우 알고리즘에 대한 도움이 필요합니다.
나는 이것을 만들기 위해 A * 알고리즘을 사용해야합니다. 그래서 알고리즘의 다음 단계에서 가능한 모든 안전한 상태가 필요한 것입니다. 가능한 모든 안전한 상태를 찾으면 현재 최단 경로에 추가하고 휴리스틱 함수에 따라 경로 목록을 정렬하고 열어야하는 다음 필드를 선택합니다.
알고리즘을 쓰는 것을 피하고 컴퓨터가 스스로 배우도록 할 수는 있지만 더 이상 말할 수는 없습니다./ – BlackBear
제공하는 예제 이미지를 이해할 수 없습니다. 맨 왼쪽의 "2"는 왼쪽 두 번째 행의 필드가 채워지지만 두 번째 "2"는 그 중 하나만 제안합니다. 어떤 게임 컨텍스트에서 이것이 발생합니까? 게임의 정보가 상충 될 수 있다고 상상하고 있습니까? – pjmorse
그러나 알고리즘을 사용하여 그 이미지에서 안전한 필드를 찾을 수 있습니다. 두 가지로 둘러싸인 2를 가져 가라. 두 광산 주변 광산의 수는이 광산 주변의 발견 된 광산의 현재 수와 같다. 그래서 위의 빈 칸을 밝힐 수 있습니다. 아니면 플래그가없는 필드가 있다면 플래그를 표시하는 방법을 알 수 있습니까? – Kevin