목차
백준 단계별로 풀어보기
25.09.20
10단계: 기하 1: 직사각형과 삼각형
1085번: 직사각형에서 탈출
문제 링크 : https://www.acmicpc.net/problem/1085
문제 풀이
>> 문제를 풀기 위해 알아야 할 개념
- 직사각형의 경계선까지 가는 거리의 최솟값
: 어느 한 점(x, y)에서 어느 한 변 사이의 거리의 최솟값을 말한다.
--> x축 방향으로 더 가까운 변과의 거리를 구하고 y축 방향으로 더 가까운 변과의 거리를 구해서 두 거리를 비교하여 더 작은 쪽이 최솟값이다.
>> 풀이
- x, y, w, h 값을 입력받아 int값으로 변환한다.
- x축 방향으로 더 가까운 변과의 거리를 담을 변수 'minX', y축 방향으로 더 가까운 변과의 거리를 담을 변수 'minY'를 선언한다.
- 삼항연산자를 통해 minX와 minY값을 담는다.
- 삼항연산자를 통해 minX와 minY 중 더 적은 값을 출력한다.
정답 코드
class Backjoon
{
static void Main(string[] args)
{
string[] input = Console.ReadLine().Split();
int x = int.Parse(input[0]);
int y = int.Parse(input[1]);
int w = int.Parse(input[2]);
int h = int.Parse(input[3]);
int minX = 0;
int minY = 0;
minX = h - y > y ? y : h - y;
minY = w - x > x ? x : w - x;
Console.Write(minX > minY ? minY : minX);
}
}
'Development > Baekjoon' 카테고리의 다른 글
[C#] 15894번: 수학은 체육과목 입니다 (0) | 2025.09.23 |
---|---|
[C#] 3009번: 네 번째 점 (0) | 2025.09.22 |
[C#] 27323번: 직사각형 (0) | 2025.09.19 |
[C#] 11653번: 소인수분해 (0) | 2025.09.18 |
[C#] 2581번: 소수 (0) | 2025.09.17 |