Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 오름차순 정렬
- 프로그래머스 문자열 정렬
- lv2
- Queue
- java
- 프로그래머스 풀이
- 스프링부트 도커 배포
- index of
- 문자열
- 이진수 변환
- Programmers
- 클라이언트
- 백준
- 버퍼
- 스택
- StringTokenizer
- 큐
- 스프링부트 도커로 배포
- 스프링부트 도커
- 프로그래머스 자바
- lv0
- 알고리즘
- SWEA
- 자바
- Stack
- Lv1
- 백준 N과 M 자바
- 프로그래머스
- COS Pro
- 삼각형의 완성조건
Archives
- Today
- Total
mun dev
[백준] 1459 걷기 자바(Java) 본문
문제설명
세준이는 학교에서 집으로 가려고 한다. 도시의 크기는 무한대이고, 도시의 세로 도로는 모든 정수 x좌표마다 있고, 가로 도로는 모든 정수 y좌표마다 있다. 세준이는 현재 (0, 0)에 있다. 그리고 (X, Y)에 위치한 집으로 가려고 한다. 세준이가 걸을 수 있는 방법은 두가지 인데, 하나는 도로를 따라서 가로나 세로로 한 블록 움직여서 이번 사거리에서 저 사거리로 움직이는 방법이고, 블록을 대각선으로 가로지르는 방법이 있다.
세준이가 집으로 가는데 걸리는 최소시간을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 집의 위치 X Y와 걸어서 한 블록 가는데 걸리는 시간 W와 대각선으로 한 블록을 가로지르는 시간 S가 주어진다. X와 Y는 1,000,000,000보다 작거나 같은 음이 아닌 정수이고, W와 S는 10,000보다 작거나 같은 자연수이다.
출력
첫째 줄에 세준이가 집에가는데 걸리는 최소시간을 출력한다.
✅ 통과한 코드
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
long x = Long.parseLong(st.nextToken());
long y = Long.parseLong(st.nextToken());
long w = Long.parseLong(st.nextToken());
long s = Long.parseLong(st.nextToken());
long ds1, ds2, ds3;
ds1 = (x + y) * w; // 수평 x,y 로만 이동
if ((x + y) % 2 == 0) { // 짝수라면
ds2 = Math.max(x, y) * s; // 대각선 이동
} else {
ds2 = (Math.max(x, y) - 1) * s + w; // 대각성이동, 수평이동 1칸
}
// 대각선으로 이동 후 수평이동
ds3 = (Math.min(x, y)) * s + (Math.abs(x - y)) * w;
// 가장 작은 값 출력
System.out.println(Math.min(ds1, Math.min(ds2, ds3)));
}
}
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 2012 등수매기기 자바(Java) (0) | 2023.04.29 |
---|---|
[백준] 2468 안전영역 자바(Java) (0) | 2023.04.27 |
[백준] 25206 너의 평점은 자바(Java) (0) | 2023.04.20 |
[백준] 10989 수 정렬하기3 자바(Java) (0) | 2023.04.18 |
[백준] 14425 문자열 집합 자바(Java) (0) | 2023.04.18 |