2025년 경기모바일과학고등학교 1학기 전공심화 자바프로그래밍반
문제: 승훈이는 어디로 갈까?
승훈이는 지금 네모난 운동장 안에 있어요. 운동장은 다음과 같은 규칙을 가지고 있어요:
- 운동장의 가로 길이는
w
미터 - 운동장의 세로 길이는
h
미터 - 운동장의 왼쪽 아래 모서리가 시작점이에요 (즉, (0, 0)에서 시작해요)
승훈이는 지금 운동장 안의 어떤 위치에 서 있어요. 그 위치는 다음과 같이 주어져요:
- 왼쪽 벽에서
x
미터 떨어져 있고 - 아래쪽 벽에서
y
미터 떨어져 있어요
승훈이는 운동장의 벽 중에서 가장 가까운 곳으로 가고 싶어요. 운동장의 네 벽은 다음과 같아요:
- 왼쪽 벽
- 오른쪽 벽
- 아래쪽 벽
- 위쪽 벽
📐 운동장 예시 (텍스트 시각화)
아래는 운동장을 위에서 본 모습이에요.
S
는 승훈이가 있는 위치예요.
위쪽 벽 (h)
┌───────────────┐
│ │
│ S ← 승훈이 위치 │
│ │
└───────────────┘
왼쪽 벽 (0) 오른쪽 벽 (w)
승훈이는 네 벽 중 가장 가까운 벽까지 걸어가려고 해요. 그 거리의 최솟값을 구하는 프로그램을 만들어 보세요.
🔢 입력 형식
x y w h
x
: 왼쪽 벽에서의 거리y
: 아래쪽 벽에서의 거리w
: 운동장의 가로 길이h
: 운동장의 세로 길이
✅ 출력 형식
- 승훈이가 갈 수 있는 가장 짧은 거리를 출력하세요.
🧪 입력 예시
6 2 10 3
🧾 출력 예시
1
💡 힌트
승훈이가 네 벽까지 가는 거리는 다음과 같이 계산할 수 있어요:
- 왼쪽 벽까지 거리:
x
- 오른쪽 벽까지 거리:
w - x
- 아래쪽 벽까지 거리:
y
- 위쪽 벽까지 거리:
h - y
이 네 가지 중 가장 작은 값이 승훈이가 갈 수 있는 가장 짧은 거리예요!