BOJ 11557 : Yangjojang of The Year -JAVA

2024. 12. 3. 00:13ยทAlgorithm

 

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


๐Ÿšฉ๋ฌธ์ œ

๐Ÿ”“๋ฌธ์ œํ•ด๊ฒฐ

1.์ˆ  ์†Œ๋น„๊ฐ€ ๊ฐ€์žฅ ๋งŽ์€ ๊ณณ์„ ์•Œ๋ ค๋ฉด ์ˆ ์†Œ๋น„๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์•ผํ•œ๋‹ค.

2.์ˆ ์„ ์†Œ๋น„ํ•œ ์–‘์ด ๊ฐ™์€ ํ•™๊ต๋Š” ์—†๋‹ค๊ณ  ์ฃผ์–ด์กŒ์œผ๋ฏ€๋กœ ์ค‘๋ณต๊ฐ’์„ ์ €์žฅํ•˜์ง€ ์•Š๋Š” map์„ ์‚ฌ์šฉํ•˜์—ฌ

์ˆ ์˜ ์–‘๊ณผ ํ•™๊ต๋ฅผ ์ง์ง€์–ด๋„ ๋ˆ„๋ฝ๋˜๋Š” ํ•™๊ต๊ฐ€ ์—†๋‹ค.

3.๊ทธ๋Ÿฌ๋ฏ€๋กœ map์˜ key๋กœ ์ˆ ์˜ ์–‘, value๋กœ ํ•™๊ต์ด๋ฆ„์„ ๋„ฃ๊ณ 

4.key๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ›„

5.map์˜ ์ฒซ๋ฒˆ์งธํ‚ค๊ฐ’์„ ํ†ตํ•ด value๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.

 

* ์ž๋™์ •๋ ฌ์ด ๋˜๋Š” TreeMap์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด๋ฆผ์ฐจ์ˆœ์กฐ๊ฑด์„ ๊ฑธ์–ด์ค€๋‹ค.

* ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ •์ˆ˜๋กœ ์ฃผ์–ด์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฌด์กฐ๊ฑด ํ•™๊ต์ด๋ฆ„,์ˆ ์˜ ์–‘ ๋ฟ์ด๋ฏ€๋กœ BufferedReader๋ฅผ ํ†ตํ•ด Split์„ ์ด์šฉํ•˜์—ฌ ํ•ด๋‹น ๊ฐ’์„ ๊ฐ€์ ธ์˜จ๋‹ค

* ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ๋งˆ๋‹ค ์ถœ๋ ฅํ•ด์•ผํ•˜๋‚˜ ํ…Œ์ŠคํŠธ์˜ ๋ฒ”์œ„๊ฐ€ ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ scanner๋ณด๋‹ค StringBuilder๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธ๊ฐ€

์ข…๋ฃŒ๋˜๊ณ  ๋งˆ์ง€๋ง‰์— ํ•œ๊บผ๋ฒˆ์— ํ•ด๋‹น ๊ฐ’๋“ค์„ ์ถœ๋ ฅํ•œ๋‹ค.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        int t= Integer.parseInt(br.readLine()); //ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค
        for (int i = 0; i < t; i++) {
            int n = Integer.parseInt(br.readLine()); //ํ•™๊ต์˜ ์ˆ˜
            TreeMap<Integer,String> map = new TreeMap<>(Collections.reverseOrder());
            for (int j = 0; j < n; j++) {
                String [] str = br.readLine().split(" ");
                map.put(Integer.parseInt(str[1]),str[0]); //0:ํ•™๊ต์ด๋ฆ„ 1:์ˆ ์˜ ์–‘
            }
            sb.append(map.firstEntry().getValue()).append("\n");
        }
        System.out.println(sb);


    }
}

๋ฉ”๋ชจ๋ฆฌ: 14024 KB, ์‹œ๊ฐ„: 96 ms

 

๐Ÿ’Š๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•

์ˆ ์˜ ์ตœ๋Œ€์–‘๊ณผ ๊ทธ์— ํ•ด๋‹นํ•˜๋Š” ํ•™๊ต๋ฅผ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ๋‹ค.

for๋ฌธ์„ ๋Œ๋ฉด์„œ ์ž…๋ ฅ๋ฐ›์€ ์ˆ ์˜ ์ตœ๋Œ€์–‘์ด

๊ธฐ์กด๊ฐ’๋ณด๋‹ค ํฌ๋ฉด ์ตœ๋Œ€์–‘๊ณผ ํ•™๊ต๋ฅผ ์ €์žฅํ•ด์ค€๋‹ค.

for๋ฌธ์ด ๋๋‚˜๋ฉด ํ•ด๋‹น ํ•™๊ต๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

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

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        int t= Integer.parseInt(br.readLine()); //ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค
        for (int i = 0; i < t; i++) {
            int n = Integer.parseInt(br.readLine()); //ํ•™๊ต์˜ ์ˆ˜
            int max = 0;  //์ตœ๋Œ€ ์ˆ ์˜ ์–‘
            String school = ""; //๊ทธ์— ํ•ด๋‹นํ•˜๋Š” ํ•™๊ต
            TreeMap<Integer,String> map = new TreeMap<>(Collections.reverseOrder());
            for (int j = 0; j < n; j++) {
                String [] str = br.readLine().split(" ");
                if(Integer.parseInt(str[1])>max){
                    max = Integer.parseInt(str[1]);
                    school = str[0];
                }
            }
            sb.append(school).append("\n");
        }
        System.out.println(sb);
    }
}

๋ฉ”๋ชจ๋ฆฌ: 14032KB, ์‹œ๊ฐ„: 100 ms

 

 

์ฃผ์–ด์ง€๋Š” ํ•™๊ต์˜ ๋ฒ”์œ„๊ฐ€ ์ž‘์•„์„œ ๊ทธ๋Ÿฐ์ง€ map์— ๋‹ด์ง€์•Š๊ณ  max๋น„๊ต๋ฅผ ํ†ตํ•ด ํ•™๊ต์ด๋ฆ„์„ ๊ฐ€์ ธ์™”์„๋•Œ

์œ ์˜๋ฏธํ•œ ์ฐจ์ด๊ฐ€ ์—†์—ˆ๋‹ค.

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

[Java]BOJ 2776 : ์•”๊ธฐ์™•  (0) 2025.01.13
[Java]BOJ 1388 : ๋ฐ”๋‹ฅ์žฅ์‹  (0) 2024.12.07
[Java]BOJ 1026 : ๋ณด๋ฌผ  (0) 2024.12.06
[Java]BOJ 16112 : 5์ฐจ ์ „์ง  (0) 2024.12.03
BOJ 1863 : ์Šค์นด์ด๋ผ์ธ ์‰ฌ์šด๊ฑฐ  (0) 2024.12.03
'Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Java]BOJ 1388 : ๋ฐ”๋‹ฅ์žฅ์‹
  • [Java]BOJ 1026 : ๋ณด๋ฌผ
  • [Java]BOJ 16112 : 5์ฐจ ์ „์ง
  • BOJ 1863 : ์Šค์นด์ด๋ผ์ธ ์‰ฌ์šด๊ฑฐ
m.<jj
m.<jj
  • m.<jj
    JJ
    m.<jj
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (24)
      • Study (14)
        • Python (7)
        • Java (4)
        • HTML-CSS (1)
        • error (1)
        • Redis (0)
      • Algorithm (9)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

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

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

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    python
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.1
m.<jj
BOJ 11557 : Yangjojang of The Year -JAVA
์ƒ๋‹จ์œผ๋กœ

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