[ 백준 17266 ] 어두운 굴다리 (JAVA)

2025. 1. 13. 18:52·Algorithm/Baekjoon
반응형

[문제 풀이]

1. (가로등 사이의 거리 / 2) 중에 가장 큰 값을 구하는 방식으로 문제 해결 

[코드]

  • 길의 시작 ~ 처음 가로등 사이의 거리, 가로등 사이의 거리 / 2, 마지막 가로등 ~ 길의 끝 거리 중에 가장 큰 값 선택
dis = 0;
pre = 0;
for(int m=0; m<M; m++) {
    cur = Integer.parseInt(st.nextToken());
    tmp = cur - pre;
    if(m == 0) { // 길의 시작 ~ 처음 가로등 사이의 거리
        dis = Math.max(tmp, dis);
    }else { // 2개의 가로등이 거리를 나눠서 길을 비추므로
        if(tmp % 2 == 0) {
            dis = Math.max(tmp/2, dis);
        }else {
            dis = Math.max(tmp/2 + 1, dis);
        }
    }
    pre = cur;
}
dis = Math.max(N - pre, dis); // 마지막 가로등 ~ 길의 끝 거리

[전체 코드]

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

public class Main {
	static int N, M, dis, pre, tmp, cur;
	static StringTokenizer st;
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		N = Integer.parseInt(br.readLine());
		M = Integer.parseInt(br.readLine());
		st = new StringTokenizer(br.readLine());
		dis = 0;
		pre = 0;
		for(int m=0; m<M; m++) {
			cur = Integer.parseInt(st.nextToken());
			tmp = cur - pre;
			if(m == 0) {
				dis = Math.max(tmp, dis);
			}else {
				if(tmp % 2 == 0) {
					dis = Math.max(tmp/2, dis);
				}else {
					dis = Math.max(tmp/2 + 1, dis);
				}
			}
			pre = cur;
		}
		dis = Math.max(N - pre, dis);
		System.out.println(dis);
	}
}

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

 

반응형

'Algorithm > Baekjoon' 카테고리의 다른 글

[ 백준 1388 ] 바닥 장식 (JAVA)  (0) 2025.01.31
[ 백준 12789 ] 도키도키 간식드리미 (C++)  (0) 2025.01.26
[ 백준 1937 ] 욕심쟁이 판다 (C++)  (0) 2024.12.30
[ 백준 5046 ] 전국 대학생 프로그래밍 대회 동아리 연합 (C++)  (0) 2024.12.13
[ 백준 4659 ] 비밀번호 발음하기 (C++)  (1) 2024.12.12
'Algorithm/Baekjoon' 카테고리의 다른 글
  • [ 백준 1388 ] 바닥 장식 (JAVA)
  • [ 백준 12789 ] 도키도키 간식드리미 (C++)
  • [ 백준 1937 ] 욕심쟁이 판다 (C++)
  • [ 백준 5046 ] 전국 대학생 프로그래밍 대회 동아리 연합 (C++)
CodeCaptain
CodeCaptain
BackEnd Developer code-0dyssey 님의 블로그 입니다.
  • CodeCaptain
    Code Odyssey
    CodeCaptain
  • 전체
    오늘
    어제
    • All (18)
      • BackEnd (3)
      • FrontEnd (0)
      • DB (0)
      • DevOps (1)
      • Algorithm (12)
        • Baekjoon (12)
      • CS (0)
      • ETC (2)
        • 회고 (1)
        • 책 (1)
  • 인기 글

  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.1
CodeCaptain
[ 백준 17266 ] 어두운 굴다리 (JAVA)
상단으로

티스토리툴바