* 홀수번째에 먹는 포션은 포션의 수치만큼 점프력을 증강시킨다.
* 짝수번재에 먹는 포션은 포션의 수치만큼 점프력을 하강시킨다.
이 문제 역시 많은 고민을 해보았지만 딱히 해법이 떠오르지 않았다.
모든문제들을 너무 어렵게만 접근하는 것은 아닌지 모르겠다는 생각을 했다.
문제는 그리디하게 풀면 풀리는 문제였다.
꼭지점에서의 포션을 마시면 가장 높이 점프 할 수 있는 요건을 충족시키게 된다.
- 현재의 지점이 이전과 이후보다 크면 마셔라
- 현재의 지점이 이전과 이후보다 작으면 마셔라
- 연속되는 부분이 나오면 한 점으로 만들어라
(이 부분 때문에 에러가 났지만 입력 받을 때 똑같은 값이 연속으로 들어오게 되면 한 점으로 만들어주게 처리해주니까 오류가 사라졌다)
=> 꼭지점 부분의 포션을 먹으면 된다.
=> 가장 왼쪽과 가장 오른쪽은 안 마셔야 한다.
(먹을 이유가 없다. 최소지점을 먹는 이유는 다음에 최고 지점이 나타나는 것을 먹기 위해서다)
=> 연속해서 들어오는 입력 값은 하나로 처리하는 것이 문제를 푸는 데 수월하다. 로직에서 같은 값을 처리하는 부분에 대해 예외처리하는 것이 오히려 더 까다롭다.
'알고리즘문제풀이' 카테고리의 다른 글
1149_RGB거리 (0) | 2015.03.25 |
---|---|
더블릿_자리배치 (0) | 2015.03.25 |
1987_알파벳 (0) | 2015.03.25 |
2458_키순서 (0) | 2015.03.25 |
3/26알고리즈_시그 (0) | 2015.03.24 |