엄지월드

백준 16435 스네이크버드 본문

알고리즘

백준 16435 스네이크버드

킨글 2024. 5. 6. 10:32

문제

 

설명

입력 받는 순서대로 비교하면서 L을 더해줄려고 하다가 예제2에서 순간 헷갈렸다.

그래서 우선순위큐로 넣은 후에 순차적으로 비교해주도록 처리하였다. 

 

 

소스

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.math.BigDecimal;
import java.util.PriorityQueue;
import java.util.StringTokenizer;

public class test1 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        StringTokenizer st = new StringTokenizer(br.readLine());
        final int N = Integer.parseInt(st.nextToken());
        int L = Integer.parseInt(st.nextToken());
        st = new StringTokenizer(br.readLine());
        PriorityQueue<Integer> pq = new PriorityQueue<>();

        for (int i = 0; i < N; i++) {
            int n = Integer.parseInt(st.nextToken());
            pq.add(n);

        }

        while(!pq.isEmpty()) {
            if(pq.poll() <= L) {
                L++;
            }
        }

        bw.write(String.valueOf(L));
        bw.flush();
        bw.close();
    }
}

'알고리즘' 카테고리의 다른 글

백준 4659 비밀번호 발음하기  (0) 2024.05.09
백준 5800 성적 통계  (0) 2024.05.08
백준 10826 피보나치 수 4  (0) 2024.05.01
백준 1652 누울 자리를 찾아라  (0) 2024.04.29
백준 5635 생일  (0) 2024.04.24
Comments