문제
https://www.acmicpc.net/problem/10814
10814번: 나이순 정렬
온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을
www.acmicpc.net
풀이 코드
public static void main(String[] args) throws IOException {
//입력 변수
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//회원의 수 입력
int n = Integer.parseInt(br.readLine());
//한번에 출력할 변수 생성
StringBuilder sb = new StringBuilder();
//회원의 나이와 이름을 입력할 배열 생성
String[][] arr = new String[n][2];
//회원의 나이와 이름을 공백을 기준으로 나눠서 배열에 집어 넣는다.
for (int i = 0; i < n; i++) {
arr[i] = br.readLine().split(" ");
}
//Comparator과 Arrays.sort를 이용해서 나이를 오름차순으로 정렬
Arrays.sort(arr, new Comparator<String[]>(){
@Override
public int compare(String[] s1, String[] s2){
return Integer.parseInt(s1[0]) - Integer.parseInt(s2[0]);
}
});
//오름차순으로 정렬한 것을 sb에 추가 후 출력
for(int i = 0 ; i<n;i++){
sb.append(arr[i][0]).append(" ").append(arr[i][1]).append("\n");
}
System.out.println(sb);
}
주석에 해설을 적어놨다.
'백준 알고리즘(solved.ac) > class2' 카테고리의 다른 글
[백준][11866번][JAVA] 요세푸스 문제 0 (0) | 2022.12.20 |
---|---|
[백준][4153번][Java] 직각삼각형 (0) | 2022.11.25 |
[백준][1978번][Java] 소수 찾기 (0) | 2022.11.24 |
[백준][11650번][Java] 좌표 정렬하기 문제 (0) | 2022.11.24 |
[백준][Java] 수 정렬하기 문제(2751번) (0) | 2022.11.22 |