당신은 마우스입니다. 당신의 마우스 친구들은 모두 잡히고 의식이없고 입구 / 출구가 하나 밖에없는 미로에 갇혀 있습니다. 당신은 미로의 완벽한지도를 가지게되므로, 당신은 돌진하고 그들을 모두 안전하게 운반 할 수있는 솔루션을 계획 할 수 있습니다. 그러나 미로는 임계 값에 1000
도달 하면 경고를 트리거하는 보안 시스템으로 보호되어 구조 임무에 실패하게됩니다.
이전 미로 조사에서, 당신이 밟는 각 사각형 (즉, 각 수평 또는 수직 움직임- 마우스는 대각선으로 움직일 수 없음 ) 1
이 보안 시스템의 카운터에 추가 됩니다. 그러나 몸무게 (다이너마이트 블록 또는 무의식 마우스 친구)를 운반하는 2
경우 추가 압력을 감지하므로 무게가 증가합니다. 출입구 광장에는이 보안 시스템이 없으므로 카운터에 추가되지 않습니다.
입구에 가져온 다이너마이트는 무제한으로 제공되므로 벽 을 모두 날려 친구를 자유롭게 해줄 수 있습니다. 그러나 폭발 50
할 때 마다 폭발적인 압력으로 인해 카운터에 추가되므로주의를 기울여야합니다. 또한 한 번에 하나의 마우스 또는 하나의 다이너마이트 블록 만 운반 할 수 있습니다. 다이너마이트의 각 블록은 하나의 벽 공간을 폭파 할 수 있기 때문에, 연속으로 여러 개의 벽이있는 경우 더 빈틈없이 입구로 돌아가 여행을해야합니다.
실습 예제
우리의 미로가 다음과 같다고 가정 해보십시오.
######
#M# E#
######
c
카운터에 사용하겠습니다 . 우리는 E
ntrance 에서 시작하여 다이너마이트를 운반하면서 왼쪽으로 한 칸 이동 c=2
합니다. 다이나마이트를 폭발시켜 벽을 폭발시켰다 c=52
. 우리는 빈 손으로 왼쪽으로 두 정사각형을 이동하여를 얻습니다 c=54
. 이제 마우스 사각형에 서 있습니다. 우리는 친구를 데리러 3 정사각형을 다시 E
xit으로 옮기지 만 마지막 정사각형에는 센서가 없기 때문에 계산되지 않으므로 뒤쪽에 무언가가있는 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#
###############