아파트 헌팅
특정한 주소에 위치한 새 아파트로 이사하려고 합니다. 이사할 수 있는 아파트 인근의 블록목록과 필수사항 목록이 제공됩니다. 이는 편의시설 목록으로서 매수인에게 중요합니다. 예를 들어, 아파트 근처에 학교와 체육관이 있는 것이 중요하다고 생각할 수 있겠죠.
주어진 블록목록에는 해당 블록에 편의시설 존재여부 정보가 포함되어 있습니다. 예를 들어, 모든 블록에 대해 학교, 수영장, 사무실 및 체육관이 있는지 여부를 알 수 있습니다.
편의를 위해 새 아파트에서 목적지가 될 수 있는 편의시설까지 걸어야 하는 거리를 최소화하는 아파트를 원할 것입니다.
특정 도로에 있는 인접 블록목록과 목적지 편의시설 목록을 참고해 가장 최적의 블록 위치(색인)를 반환하는 함수를 작성하세요.
최적의 블록이 여러 개 있는 경우 함수는 그 중 하나의 인덱스를 반환할 수 있습니다.
예제 1
입력
blocks = [ { "gym": false, "school": true, "store": false }, { "gym": true, "school": false, "store": false }, { "gym": true, "school": true, "store": false }, { "gym": false, "school": true, "store": false }, { "gym": false, "school": true, "store": true } ] reqs = ["gym", "school", "store"]
출력
3 // 3번째 인덱스에서, 짐, 학교 또는 가게에 가는 // 가장 긴 경우는 한 블록인데, 다른 인덱스에서는 // 이보다 더 멀다.