Informatica Online Judge

  텔레포테이션(Bronze) [2187 / 088B]

Time Limit(Test case) : 1000 (ms)
Number of users who solved : 29   Total Tried : 29


The Champion of this Problem (C++) : tlsdydaud1 - 0ms / 189byte
My Best Submission (C++) : N/A

[USACO 2018(Brian Dean)]

Background

농장 일들 중에서 농부 존이 가장 싫어하는 일은, 아주 많은 젖소 똥들을 이리 저리 옮기는 일이다.

이런 일을 효율적으로 하기 위해, 멋진 발명품을 만들었다.: 똥 텔레포터!

똥 텔레포터를 이용하면, 수레가 달린 트랙터를 끌고 두 지점을 직접 왔다갔다하지 않아도 된다.

농부 존의 농장은 하나의 직선 도로를 따라 만들어져 있기 때문에, 농장의 어떤 위치는 직선 도로의 위치를 표시하는 수로 쉽게 표현할 수 있다.

똥 텔레포터를 사용하면 x위치에 있는 똥을 y위치로 순간적으로 이동시킬 수 있고, 그 반대 방향으로도 가능하다.

농부 존은 a위치에 있는 똥을 b위치로 옮기고 싶어하고, 똥을 옮기는 작업을 위해 텔레포터를 만들었다.

농부 존이 트랙터를 이용해 똥을 옮길데 필요한 이동 거리의 최소 합을 구해보자.

Input

a, b, x, y 가 순서대로 공백을 두고 한 줄로 입력 되며, 같은 값일 수도 있다.

[입력값의 정의역]

$0≤a, b, x, y≤100$

Output

농부 존이 트랙터를 이용해 똥을 옮기는데 필요한 이동 거리의 최소 값을 출력한다.

IO Example

입력
3 10 8 2

출력
3

* 설명 :
3 위치에 있는 똥을 2 위치로 옮기고, 8 위치로 텔레포트 시킨 후, 10 위치로 이동시키면 된다. 트랙터를 이용해 똥을 옮기는데 필요한 거리의 합은 1 + 2 = 3 이 된다.

Submit : [C/C++] | [C++11] | [Obj-C] | [Java] | [Python]
Prob Analysis : [Problem Statistics] | [Solution]