반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


1. [백준] 백준 25625번 샤틀버스 자바(JAVA)

1) 문제번호 : 25625

 

2) 문제 출처

https://www.acmicpc.net/problem/25625

 

25625번: 샤틀버스

3년만에 열리는 대면 SNUPC를 위해서, 민준이는 제2공학관으로 가고자 한다! 제2공학관에 가는 버스는 여러 가지가 있다. 관악02, 5511, 5513, 5516... 어떤 버스를 타더라도 단점이 있는데, 그것은 바로

www.acmicpc.net

 

2. 문제

3년만에 열리는 대면 SNUPC를 위해서, 민준이는 제2공학관으로 가고자 한다!

제2공학관에 가는 버스는 여러 가지가 있다. 관악02, 5511, 5513, 5516... 어떤 버스를 타더라도 단점이 있는데, 그것은 바로 돈이 든다는 점이다! 돈을 한 푼이라도 아끼고자, 민준이는 셔틀버스를 타고 서울대입구역에서 제2공학관으로 가고 싶어한다.

현재 서울대입구역과 제2공학관 사이에는 셔틀버스가 정확히 한 대 운행되고 있다. 이 셔틀버스의 운행 수칙은 다음과 같다.

  • 버스가 서울대입구역에서 제2공학관으로 이동하는 데에, 혹은 제2공학관에서 서울대입구역으로 이동하는 데에는 정확히 x분의 시간이 걸린다.
  • 버스는 쉬지 않고 운행한다. 즉 서울대입구역 혹은 제2공학관에 도착하자마자 다시 제2공학관 혹은 서울대입구역을 향해 이동하기 시작한다. 이때 타고 내리는 데에 걸리는 시간은 무시하자.

현재 민준이는 서울대입구역에 있으며, 버스는 y분 후에 제2공학관으로 도착할 예정이다. 민준이가 버스에 최소 몇 분 뒤에 탑승할 수 있는지 계산해 보자.

 

3. 제약사항

  • 1 ≦ A ≦ 100.
  • 1 ≦ B ≦ 100.
  • A, B 는 정수이다.

 

4. 입력

첫째 줄에 정수 x와 y가 공백을 사이에 두고 주어진다. (2 ≤ x ≤ 100; 1 ≤ y < 2xx ≠ y)

 

5. 출력

첫째 줄에 민준이가 버스에 탑승하기 위해서 기다려야 하는 최소 시간을 출력한다.

 

6. 풀이

- 각 구간마다 왔다 갔다 하는 시간은 10분이다. 한 지점에서 걸리는 시간이 x 분보다 큰 경우에는 출발 이미 출발하여 다시 돌아와야 하는 시간이므로, x > y인 경우 x+y를 하고, 그렇지 않은 경우에는 y-x를 하여 출력하면 된다.

 

7. 소스 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.StringTokenizer;

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());
		
		int x = Integer.parseInt(st.nextToken());
		int y = Integer.parseInt(st.nextToken());
		
		if (x > y) {
			System.out.println(x+y);
		} else {
			System.out.println(y-x);
		}
	}
}

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기