![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAAu2r%2FbtqSDtWUz69%2FaMc1OghkQj9XDsivK6yNM0%2Fimg.png)
[프로그래머스,Level 1] 키패드 누르기(JAVA 구현)
·
CodingTest/프로그래머스(Programmers)
- 첫 풀이 처음에는 이 문제에서 가운데 번호를 누르기 위해서 왼쪽, 오른쪽 손의 거리 차이에 따라 누루는 손이 결정된다는 것을 보고 bfs를 이용해 풀어보려고 했지만, 잘 해결되지 않아 검색을 통해 다른 분들의 풀이를 참고하였다. - 정답풀이 다른 분들의 주된 풀이로는 '맨해튼 거리 측정법'이었다. 관련 내용에 대해 간단히 찾아본 결과 맨해튼 거리 측정법은 유클리드 거리 측정법과는 다르게 점 A와 점 B의 사이에 장애물이 존재해 정해진 경로로만 이동이 가능하다는 차이점이 존재한다. 예를들어 왼손이 1번에 위치한 상태에서 5번을 누르기 위해서는 1-> 2-> 5 또는 1-> 4-> 5와 같이 대각선으로의 직접적인 이동이 불가능한 경우를 말한다. 맨해튼 거리 측정법의 공식은 |각 점의 X좌표 차이| + |..