b.2075 N๋ฒˆ์งธ ํฐ ์ˆ˜

2025. 4. 4. 00:55ยทAlgorithm & Data Structures/BOJ

 

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

 

 

 

๐Ÿ“Œ ์ž๋ฐ”(Java)๋กœ ํ‘ธ๋Š” N๋ฒˆ์งธ ํฐ ์ˆ˜ ๋ฌธ์ œ - ๋ฐฑ์ค€ 2075 ๐Ÿงฎ

 


๐Ÿ”Ž ๋ฌธ์ œ ๊ฐœ์š”

 

๋ฐฑ์ค€ 2075๋ฒˆ - N๋ฒˆ์งธ ํฐ ์ˆ˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

N x N ํฌ๊ธฐ์˜ ํ–‰๋ ฌ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ชจ๋“  ์ˆ˜๋ฅผ ์ •๋ ฌํ–ˆ์„ ๋•Œ N๋ฒˆ์งธ๋กœ ํฐ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

• ๋‹จ์ˆœ ์ •๋ ฌ๋กœ ํ’€ ์ˆ˜ ์žˆ์ง€๋งŒ, ํšจ์œจ์ ์ธ ํ’€์ด๊ฐ€ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

• ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ๊ณผ ์‹œ๊ฐ„ ์ œํ•œ์„ ๊ณ ๋ คํ•˜๋ฉด ์šฐ์„ ์ˆœ์œ„ ํ ์‚ฌ์šฉ์ด ๋” ์ ์ ˆํ•ฉ๋‹ˆ๋‹ค.

 


๐Ÿ’ก ์˜ˆ์ œ ์ž…๋ ฅ

5
12 7 9 15 5
13 8 11 19 6
21 10 26 31 16
48 14 28 35 25
52 20 32 41 49

๐Ÿ’ก ์˜ˆ์ œ ์ถœ๋ ฅ

35

โžก ๋ชจ๋“  ์ˆ˜ ์ค‘ 5๋ฒˆ์งธ๋กœ ํฐ ์ˆ˜(๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ ๊ธฐ์ค€)๋Š” 35

 


๐Ÿ›  ์ ‘๊ทผ ๋ฐฉ์‹

 

ํ˜„์žฌ ์ฝ”๋“œ๋Š” ๋ชจ๋“  ๊ฐ’์„ ๋ฐฐ์—ด์— ๋„ฃ๊ณ  ์ •๋ ฌํ•œ ๋’ค N*N - N๋ฒˆ์งธ ๊ฐ’์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ ์‹œ N๋ฒˆ์งธ ํฐ ์ˆ˜๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ ์‹œ (N*N - N)๋ฒˆ์งธ ์ธ๋ฑ์Šค์— ์œ„์น˜ํ•œ๋‹ค๋Š” ์ ์„ ์ด์šฉํ•œ ํ’€์ด์ž…๋‹ˆ๋‹ค.

 

ํ•˜์ง€๋งŒ ์‹œ๊ฐ„ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ์ธก๋ฉด์—์„œ ์šฐ์„ ์ˆœ์œ„ ํ(์ตœ์†Œ ํž™)์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด ๋” ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

 


๐Ÿ”น ํ˜„์žฌ ์ฝ”๋“œ ํ•ด์„ค (์ •๋ ฌ ๋ฐฉ์‹)

int[] arr = new int[N*N];

for(int i = 0 ; i < N ; i++){
    StringTokenizer st = new StringTokenizer(br.readLine());
    for(int j = 0 ; j < N ; j++){
        arr[i*N+j] = Integer.parseInt(st.nextToken());
    }
}

Arrays.sort(arr);
System.out.println(arr[N*N-N]);

โœ” ๋ชจ๋“  ์ˆ˜๋ฅผ arr[]์— ์ €์žฅํ•˜๊ณ 

โœ” ์ •๋ ฌํ•œ ํ›„ (N*N - N)๋ฒˆ์งธ ์ธ๋ฑ์Šค ์ถœ๋ ฅ → N๋ฒˆ์งธ ํฐ ์ˆ˜

 


 

๐Ÿ“ฆ ๋Œ€์•ˆ: ์šฐ์„ ์ˆœ์œ„ ํ(PriorityQueue)๋ฅผ ํ™œ์šฉํ•œ ํšจ์œจ์ ์ธ ํ’€์ด

PriorityQueue<Integer> pq = new PriorityQueue<>();

for (int i = 0; i < N; i++) {
    StringTokenizer st = new StringTokenizer(br.readLine());
    for (int j = 0; j < N; j++) {
        int num = Integer.parseInt(st.nextToken());
        pq.add(num);
        if (pq.size() > N) {
            pq.poll();  // N๊ฐœ๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐ
        }
    }
}
System.out.println(pq.peek());

โœ” ์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ์ด์šฉํ•ด ํ•ญ์ƒ ํฐ ์ˆ˜ N๊ฐœ๋งŒ ์œ ์ง€

โœ” ์ตœ์ข…์ ์œผ๋กœ N๋ฒˆ์งธ ํฐ ์ˆ˜๋Š” pq.peek()


 

๐Ÿ† ์ •๋ฆฌ

 

โœ… ํ•ต์‹ฌ ํฌ์ธํŠธ

 

โœ” N x N ํ–‰๋ ฌ์˜ ๋ชจ๋“  ๊ฐ’์„ ์ •๋ ฌํ•˜์—ฌ N๋ฒˆ์งธ ํฐ ์ˆ˜๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ

โœ” ๋‹จ์ˆœ ์ •๋ ฌ ๋ฐฉ์‹๋„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์šฐ์„ ์ˆœ์œ„ ํ ์‚ฌ์šฉ์ด ๋” ํšจ์œจ์ 

โœ” ์ž…๋ ฅ์ด ์ปค์งˆ์ˆ˜๋ก ๋ฉ”๋ชจ๋ฆฌ์™€ ์†๋„์—์„œ ํ ๋ฐฉ์‹์ด ์œ ๋ฆฌํ•จ


๐ŸŽฏ ์ด ๋ฌธ์ œ๋ฅผ ํ†ตํ•ด ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ์ 

 

โœ… N๋ฒˆ์งธ ํฐ ๊ฐ’์„ ๊ตฌํ•  ๋•Œ๋Š” “์ตœ์†Œ ํž™”์„ ์œ ์ง€ํ•˜๋Š” ๋ฐฉ์‹์ด ํšจ๊ณผ์ 

โœ… ๋ฐฐ์—ด ์ •๋ ฌ ๋Œ€์‹  ์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ๋– ์˜ฌ๋ฆฌ๋Š” ์Šต๊ด€ ๊ธฐ๋ฅด๊ธฐ

โœ… ์ž…๋ ฅ์ด ํฌ๊ณ  ์‹œ๊ฐ„ ์ œํ•œ์ด ํƒ€์ดํŠธํ• ์ˆ˜๋ก ์ •๋ ฌ๋ณด๋‹ค ํ ๋ฐฉ์‹ ๊ณ ๋ ค


 

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์…จ๋‹ค๋ฉด ์ข‹์•„์š”์™€ ๊ณต์œ  ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค! ๐Ÿ˜Š

 

 

'Algorithm & Data Structures > BOJ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

b3665. ์ตœ์ข…์ˆœ์œ„  (0) 2025.04.09
b.2696 ์ค‘์•™๊ฐ’ ๊ตฌํ•˜๊ธฐ  (0) 2025.04.07
b.3273 ๋‘ ์ˆ˜์˜ ํ•ฉ  (0) 2025.04.01
b.11657 ํƒ€์ž„๋จธ์‹   (0) 2025.03.20
b1956. ์šด๋™  (0) 2025.03.20
'Algorithm & Data Structures/BOJ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • b3665. ์ตœ์ข…์ˆœ์œ„
  • b.2696 ์ค‘์•™๊ฐ’ ๊ตฌํ•˜๊ธฐ
  • b.3273 ๋‘ ์ˆ˜์˜ ํ•ฉ
  • b.11657 ํƒ€์ž„๋จธ์‹ 
Geisha
Geisha
๊ฐœ๋ฐœ ์ผ๊ธฐ
  • Geisha
    Geisha
    Geisha
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (313)
      • Algorithm & Data Structures (235)
        • BOJ (93)
        • SWEA (1)
        • Programers (137)
        • Data Structures (3)
      • DB (25)
        • SQL (19)
        • RDBMS (2)
      • Java (1)
        • Class (1)
      • Spring (5)
        • Spring MVC (1)
        • Annotations (1)
      • CS (36)
        • ์šด์˜์ฒด์ œ (13)
        • ๋„คํŠธ์›Œํฌ (5)
      • Tool (6)
        • Git (5)
        • AWS (1)
      • Project (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    dfs
    ํˆฌํฌ์ธํ„ฐ
    ์œ ๋‹ˆ์˜จํŒŒ์ธ๋“œ
    ๋™์ ๊ณ„ํš๋ฒ•
    algorithm
    PriorityQueue
    ๊ณจ๋“œ
    SQL
    ๋ฐฑ์ค€
    ์Šคํƒ
    ์ด๋ถ„ํƒ์ƒ‰
    binarySearch
    ์ „์œ„์ˆœํšŒ
    dp
    baekjoon
    ๊ฒฝ๋กœ์••์ถ•
    unionfind
    Union-Find
    Stack
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    BFS
    DynamicProgramming
    ํ›„์œ„์ˆœํšŒ
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    Java
    ๋ฐฑํŠธ๋ž˜ํ‚น
    ๊ตฌํ˜„
    ๋‹ค์ต์ŠคํŠธ๋ผ
    programmers
    Dijkstra
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.0
Geisha
b.2075 N๋ฒˆ์งธ ํฐ ์ˆ˜
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”