A. Shortest Path with Obstacle
문제 출처: https://codeforces.com/contest/1547/problem/A
-
문제 요약
좌표 평면에서 그림과 같이 점 A, B의 위치가 주어지고 장애물인 F의 위치가 주어질 때, A에서 B로 향하는 길의 최단거리를 구하라
An example of a possible shortest path for the first test case.
An example of a possible shortest path for the second test case.
input
1 |
|
output
1 |
|
-
문제 풀이
그리드 위에서 움직이기 때문에 A와 B가 직사각형을 이룬다면 (x, y좌표 중 어떤 것도 같지 않을 때) F가 어디있던 최단거리는 abs(dx)+abs(dy) 로 일정할 것이다.
예외가 발생하는 상황은 A와 B가 일직선 위에 존재할 때, 장애물이 A와 B 사이에 존재하는 경우이다. 이런 경우엔 위 두번 째 그림처럼 돌아가야하므로 최단거리에 2만 더해주면 된다.
-
풀이 코드
1 |
|