[백준 알고리즘]/[자바 Java]

백준 10814 나이순 정렬 | 자바 java | Arrays.sort Comparator BufferedReader BufferedWriter

말하는펭귄 2024. 1. 22. 17:37
728x90
반응형

 

이번 포스팅은 백준 10814번 나이순 정렬입니다.

아래 url를 클릭하시면 백준 사이트에서 문제를 볼 수 있습니다.

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

 

10814번: 나이순 정렬

온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을

www.acmicpc.net

 

 

 

기본 알고리즘

정렬

 

반응형

 

전체 코드

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import java.io.*;
import java.util.Arrays;
import java.util.Comparator;
import java.util.StringTokenizer;
 
class Member {
    int age;
    String name;
    
    public Member(int a, String n){
        age = a;
        name = n;
    }
}
 
public class Main{
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
 
        int n=0
 
        n=Integer.parseInt(br.readLine());
 
        Member arr[] = new Member[n];
 
        for(int i=0; i<n; i++){
            StringTokenizer st = new StringTokenizer(br.readLine());
            Member m = new Member(Integer.parseInt(st.nextToken()),st.nextToken());
            arr[i]=m;
        }
 
        Arrays.sort(arr, new Comparator<Member>() {
            public int compare(Member m1, Member m2){
                return m1.age - m2.age;
            }
        } );
 
        for(int i=0; i<n; i++){
            bw.write(arr[i].age+" "+arr[i].name+"\n");
        }
 
 
        bw.flush();
        bw.close();
    }
}
 
cs

 

 

728x90
반응형