당신은 마우스입니다. 당신의 마우스 친구들은 모두 잡히고 의식이없고 입구 / 출구가 하나 밖에없는 미로에 갇혀 있습니다. 당신은 미로의 완벽한지도를 가지게되므로, 당신은 돌진하고 그들을 모두 안전하게 운반 할 수있는 솔루션을 계획 할 수 있습니다. 그러나 미로는 임계 값에 1000도달 하면 경고를 트리거하는 보안 시스템으로 보호되어 구조 임무에 실패하게됩니다.
이전 미로 조사에서, 당신이 밟는 각 사각형 (즉, 각 수평 또는 수직 움직임- 마우스는 대각선으로 움직일 수 없음 ) 1이 보안 시스템의 카운터에 추가 됩니다. 그러나 몸무게 (다이너마이트 블록 또는 무의식 마우스 친구)를 운반하는 2경우 추가 압력을 감지하므로 무게가 증가합니다. 출입구 광장에는이 보안 시스템이 없으므로 카운터에 추가되지 않습니다.
입구에 가져온 다이너마이트는 무제한으로 제공되므로 벽 을 모두 날려 친구를 자유롭게 해줄 수 있습니다. 그러나 폭발 50할 때 마다 폭발적인 압력으로 인해 카운터에 추가되므로주의를 기울여야합니다. 또한 한 번에 하나의 마우스 또는 하나의 다이너마이트 블록 만 운반 할 수 있습니다. 다이너마이트의 각 블록은 하나의 벽 공간을 폭파 할 수 있기 때문에, 연속으로 여러 개의 벽이있는 경우 더 빈틈없이 입구로 돌아가 여행을해야합니다.
실습 예제
우리의 미로가 다음과 같다고 가정 해보십시오.
######
#M# E#
######
c카운터에 사용하겠습니다 . 우리는 Entrance 에서 시작하여 다이너마이트를 운반하면서 왼쪽으로 한 칸 이동 c=2합니다. 다이나마이트를 폭발시켜 벽을 폭발시켰다 c=52. 우리는 빈 손으로 왼쪽으로 두 정사각형을 이동하여를 얻습니다 c=54. 이제 마우스 사각형에 서 있습니다. 우리는 친구를 데리러 3 정사각형을 다시 Exit으로 옮기지 만 마지막 정사각형에는 센서가 없기 때문에 계산되지 않으므로 뒤쪽에 무언가가있는 2 정사각형입니다. 즉, 최종 마우스로 출구에 도달하면 c=58이보다 작 1000으므로 임무가 성공합니다.
도전
입력 미로가 주어지면 마우스 영웅이 위에서 설명한 제약 조건 내에서 갇힌 모든 마우스를 성공적으로 구출 할 수 있는지 또는 임무가 실패했는지 여부를 출력합니다.
입력
- 허용되는 형식 (여러 줄 문자열, 문자열 배열 등) 의 2D 미로 .
- 이 도전을 위해, 나는
#내벽과 외벽,M마우스 친구들과E입구에 사용할 것입니다. - 입구는 내부 벽에 바로 인접하지 않습니다 (항상 자유롭게 이동할 수있는 공간이 하나 이상 있어야 함).
- 원하는 인쇄 가능한 ASCII 문자 를 일관된 한 대체 할 수 있습니다 . 이것은 않습니다 그래서 당신이 예를 들어, 일관성 (사용하도록 선택하는 경우 유지, 당신은 외벽 대 내부 벽에 두 개의 서로 다른 기호를 사용할 수 있도록
@하는 대신 내부 벽을 위해, 그리고 휴가#외부를 들어, 모든 내부 벽은해야@하고 모든 외부 벽#). - 미로는 항상 벽에 완전히 묶여 있지만 반드시 직사각형 일 필요는 없습니다. 원하는 경우 미로에 공백이 채워져 사각형 입력이 가능하다고 가정 할 수 있습니다 (선택 사항).
- 미로에는 다이너마이트가 없으면 도달 할 수없는 섹션이있을 수 있습니다.
- 미로의 외벽을 다이너마이트 할 수 없습니다.
산출
truthy / falsey의 값입니다. "예, 마우스는 다른 모든 마우스를 구할 수 있습니다"또는 Falsey는 "아니요, 알람 시스템이 작동합니다."
규칙
예
빈 줄로 구분 된 참신한 예.
#####
#M E#
#####
######
#M# E#
######
########
#E # M#
# # #
# # #
# #
########
#############################
# ## # # #
# M ## M # # #
# ## # M # E #
#M ## # # #
#############################
###############
#MMMMMMMMMMMMM#
#MMMMMMMMMMMMM#
#MMMMMMMMMMMMM#
#MMMMMMMMMM MM#
#MMMMMMMMMMMME#
###############
빈 줄로 구분 된 팔시 예제
#############################
#M ## ## ## #
# M ## M ## ## #
# ## ## M ## E #
#M ## ## ## #
#############################
#############################
########
########
# # #
# M # M#
########
#####
# M #
#####
#####
#####
#####
###################
# # # ## ## # # #
#M#M#M## E ##M#M#M#
# # # ## ## # # #
###################
#######
######
#####
####
# M#
####
###############
#MMMMMMMMMMMMM#
#MMMMMMMMMMMMM#
#MMMMMMMMMMMMM#
#MMMMMMMMMMMMM#
#MMMMMMMMMMMME#
###############