포럼
문제 USACO0315

순간이동

설명

농부 존이 가장 싫어하는 농장 일 중 하나는 소똥을 잔뜩 실어 나르는 것이다. 이 과정을 간소화하기 위해 그는 기발한 발명품을 생각해 냈다. 바로 소똥 순간이동 장치이다! 트랙터 뒤에 수레를 달고 두 지점 사이에서 소똥을 실어 나르는 대신, 소똥 순간이동 장치를 사용하면 소똥을 한 위치에서 다른 위치로 즉시 옮길 수 있다.

농부 존의 농장은 하나의 길고 곧은 도로를 따라 지어져 있어서, 농장의 어떤 위치든 이 도로 상의 위치(사실상 수직선 위의 한 점)만으로 간단히 나타낼 수 있다. 순간이동 장치는 두 수 \(x\)\(y\)로 표현되며, 위치 \(x\)로 가져온 소똥을 위치 \(y\)로 즉시 옮길 수 있고 그 반대도 가능하다.

농부 존은 소똥을 위치 \(a\)에서 위치 \(b\)로 옮기고 싶은데, 이 과정에서 도움이 될 수도 있는 순간이동 장치를 하나 만들어 두었다(물론 도움이 되지 않는다면 순간이동 장치를 사용하지 않아도 된다). 농부 존이 트랙터로 소똥을 실어 날라야 하는 총 거리의 최솟값을 구하도록 도와주자.

출제자: Brian Dean

제약

출제자: Brian Dean

입력 형식

입력의 첫째 줄이자 유일한 줄에 공백으로 구분된 정수 네 개가 주어진다. 시작 위치와 끝 위치를 나타내는 \(a\)\(b\), 그리고 순간이동 장치를 나타내는 \(x\)\(y\)이다. 모든 위치는 \(0 \ldots 100\) 범위의 정수이며, 서로 반드시 다르지는 않다.

출력 형식

농부 존이 트랙터로 소똥을 실어 날라야 하는 최소 거리를 나타내는 정수 하나를 출력한다.

Standard input / output
This problem is judged over standard input/output. The original contest used named files — if you prefer the classic interface, tick “File I/O” on the submit form and read/write these files instead:
입력을 읽을 파일 teleport.in · 출력을 쓸 파일 teleport.out
예제 1
입력
3 10 8 2
출력
3
설명

In this example, the best strategy is to haul the manure from position 3 to
position 2, teleport it to position 8, then haul it to position 10. The total
distance requiring the tractor is therefore 1 + 2 = 3.

문제 정보

riseoj 작성

출처 올림피아드 > USACO > 2017-2018 > February > Bronze

태그

평가 및 의견

Teleportation

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 1 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Teleportation

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
파일 입출력 (teleport.in / teleport.out — classic USACO interface; off = stdin/stdout)
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8