일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프로그래머스
- 백준
- PINTOS
- 정글sw
- Express
- malloc-lab
- SW정글
- 자바스크립트
- sw 정글
- 목록 창 만들기
- node.js
- Spring
- Coding Test
- React
- HTML
- JavaScrpit
- 회원가입
- javascript
- 코딩테스트
- dfsbfs
- 리액트
- 템플릿 문자열
- onChange
- 사용자 정의 객체
- html input
- python
- 회원가입 폼
- sw정글사관학교
- conding test
- 자바스크립트 문자열 변수
Archives
- Today
- Total
코드치고 무게치고
[백준 Node.js] 1085번 직사각형에서 탈출 javascript 본문
백준 1085번 문제
레벨: 브론즈3
언어: JavaScript
문제설명
한수는 지금 (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는 정수
📑풀이 과정
한수가 있는 (x,y)에서 경계선 까지 수직, 수평으로 갔을 때 거리의 최소값이 나온다.
(x,y)에서 (x,h), (x,0), (w,y), (0,y) 까지의 길이를 구하고 제일 짧은 값을 출력하면 된다.
📋풀이 코드
const fs = require("fs");
let input = fs
.readFileSync("/dev/stdin")
.toString()
.trim()
.split(" ")
.map((el) => +el);
solution(input);
function solution(input) {
const [x, y, w, h] = input;
let answer = [];
answer.push(Math.abs(y - h));
answer.push(Math.abs(y - 0));
answer.push(Math.abs(w - x));
answer.push(Math.abs(x - 0));
console.log(Math.min(...answer));
}
'개발공부 > 코딩테스트 준비' 카테고리의 다른 글
[백준 node.js] 2292번 벌집 javascript (0) | 2022.02.08 |
---|---|
[백준 node.js] 1259번 팰린드 롬수 javascript (0) | 2022.02.07 |
[백준 node.js] 2908번 상수 JavaScript (0) | 2022.02.07 |
[백준 node.js] 2884번 알람 시계 JavaScrip (0) | 2022.02.07 |
[백준 node.js] 1010번 다리놓기 javascript (0) | 2022.02.02 |
Comments