헝D의 일기장
article thumbnail

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

 

2075번: N번째 큰 수

첫째 줄에 N(1 ≤ N ≤ 1,500)이 주어진다. 다음 N개의 줄에는 각 줄마다 N개의 수가 주어진다. 표에 적힌 수는 -10억보다 크거나 같고, 10억보다 작거나 같은 정수이다.

www.acmicpc.net

 

 

나의풀이

import java.io.*;
import java.util.*;
public class Main {
    public static void main(String args[]) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        StringTokenizer st = new StringTokenizer(br.readLine());
        PriorityQueue<Integer> q = new PriorityQueue<>(); 
        //PriorityQueue<Integer> q = new PriorityQueue<>(Collections.reverseOrder());  최대 힙 구성을 위해 -1곱할 필요없이 이렇게 선언해도됨
        int n= Integer.parseInt(st.nextToken());
        for(int i=0; i<n ; i++){
            st = new StringTokenizer(br.readLine());
            for(int j=0; j<n; j++){
                int temp = Integer.parseInt(st.nextToken());
                q.add(temp * (-1)); //최대힙으로 구성하기 위해 음수로 넣기
            }
        }
        int answer=0;
        for(int i=0; i<n; i++){
            answer=q.peek();
            q.remove(answer);
        }
        
        bw.write(Integer.toString(answer * (-1)));
        bw.flush();
        br.close();
        bw.close();
    
    }
}
profile

헝D의 일기장

@헝D

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!