본문 바로가기
백준/1 - 5000

[백준] 3135번 : 라디오

by lms0806 2024. 11. 13.
728x90
반응형

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

 

B번 채널에 최소 몇번만에 도달할 수 있는지 확인하는 문제입니다.

 

A와 N개의 주파수 중 B와 차이가 가장 적은 주파수로 이동한 후, 그 차이만큼 더한값을 출력하면 됩니다.

단, A가 가장 차이가 적은 경우 +1을 하시면 안됩니다.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
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 a = Integer.parseInt(st.nextToken()), b = Integer.parseInt(st.nextToken());
		
		int min = Math.abs(a - b);
		
		int n = Integer.parseInt(br.readLine());
		
		boolean flag = false;
		while(n --> 0) {
			int num = Integer.parseInt(br.readLine());
			
			if(Math.abs(num - b) < min) {
				min = Math.abs(num - b);
				flag = true;
				a = num;
			}
		}
		
		System.out.print(min + (flag ? 1 : 0));
	}
}
728x90
반응형

'백준 > 1 - 5000' 카테고리의 다른 글

[백준] 2325번 : 개코전쟁  (0) 2024.12.08
[백준] 2123번 : 인간 탑 쌓기  (0) 2024.11.17
[백준] 2785번 : 체인  (0) 2024.11.09
[백준] 1715번 : 카드 정렬하기(JAVA)  (0) 2021.10.29
[백준] 2075번 : N번째 큰 수(JAVA)  (0) 2021.10.25

댓글