0_ch4n
기계쟁이\n개발자
0_ch4n
0chn.xxx@gmail.com @0ch._.n
전체 방문자
오늘
어제

공지사항

  • All (282)
    • 🖥 CS (21)
      • 네트워크 (12)
      • 운영체제 (3)
      • 자료구조 (2)
      • Web (4)
    • 🧠 Algorithm (185)
      • [C] BOJ (93)
      • [JAVA] Programmers (91)
    • 📚 Study (69)
      • HTML&CSS (19)
      • MySQL (11)
      • JAVA (22)
      • Servlet&JSP (8)
      • Thymeleaf (2)
      • Spring (5)
      • JPA (2)
    • 📖 Book (1)
    • 📃 Certification (6)
      • 정보처리기사 (6)

인기 글

최근 글

최근 댓글

태그

  • 자바
  • CSS
  • java
  • kakao
  • 카카오
  • 코테
  • 프로그래머스
  • til
  • 코딩테스트
  • Programmers

블로그 메뉴

  • 홈
  • 태그
  • 방명록

티스토리

hELLO · Designed By 정상우.
0_ch4n

기계쟁이\n개발자

[C언어] 1085번 - 직사각형에서 탈출
🧠 Algorithm/[C] BOJ

[C언어] 1085번 - 직사각형에서 탈출

2022. 4. 1. 12:18
반응형

문제

한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 x, y, w, h가 주어진다.

출력

첫째 줄에 문제의 정답을 출력한다.

제한

  • 1 ≤ w, h ≤ 1,000
  • 1 ≤ x ≤ w-1
  • 1 ≤ y ≤ h-1
  • x, y, w, h는 정수

코드

#include <stdio.h>
#include <stdlib.h>

int main(void) {
	
	int x, y, w, h;

	scanf("%d %d %d %d", &x, &y, &w, &h); //현재 좌표, 오른쪽 위 꼭지점 좌표 입력

	int a, b, c, d;

	a = abs(0 - x); //0점부터 x까지 거리
	b = w - x; //x의 최대값부터 x까지 거리
	c = abs(0 - y); //0점부터 y까지 거리
	d = h - y; //y의 최대값부터 y까지 거리

	//최소값 구해서 출력
	if(a <= b && a <= c && a <= d) {
		printf("%d", a);
	}
	else if(b <= a && b <= c && b <= d) {
		printf("%d", b);
	}
	else if(c <= a && c <= b && c <= d) {
		printf("%d", c);
	}
	else {
		printf("%d", d);
	}

    return 0;
}
반응형
저작자표시 (새창열림)

'🧠 Algorithm > [C] BOJ' 카테고리의 다른 글

[C언어] 4153번 - 직각삼각형  (0) 2022.04.01
[C언어] 3009번 - 네 번째 점  (0) 2022.04.01
[C언어] 9020번 - 골드바흐의 추측  (0) 2022.04.01
[C언어] 4948번 - 베르트랑 공준  (0) 2022.04.01
[C언어] 1929번 - 소수 구하기  (0) 2022.04.01
    0_ch4n
    0_ch4n
    while(true) { study(); }

    티스토리툴바