https://codeup.kr/problem.php?id=3019
스트림 - 정렬
stream().sorted()
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = Integer.parseInt(sc.nextLine());
//int n = sc.nextInt();
List<schedule> list = new ArrayList<>();
for(int i=0; i<n; i++){
String[] param = sc.nextLine().split(" ");
String name = param[0];
int year = Integer.parseInt(param[1]);
int month = Integer.parseInt(param[2]);
int day = Integer.parseInt(param[3]);
list.add(new schedule(name, year, month, day));
}
list.stream().sorted(Comparator.comparing(schedule::getYear)
.thenComparing(schedule::getMonth)
.thenComparing(schedule::getDay)
.thenComparing(schedule::getName))
.map(schedule::getName)
.forEach(System.out::println);
}
}
class schedule{
private String name;
private int year;
private int month;
private int day;
public schedule(String name, int year, int month, int day) {
this.name = name;
this.year = year;
this.month = month;
this.day = day;
}
public String getName() {
return name;
}
public int getYear() {
return year;
}
public int getMonth() {
return month;
}
public int getDay() {
return day;
}
}
'알고리즘 > 자료구조' 카테고리의 다른 글
[프로그래머스] 중앙값 구하기 - Java (0) | 2023.03.07 |
---|---|
[코드업] 정올 참여 학생 리스트 만들기 1 (구조체 연습) - Java (0) | 2023.03.02 |
[코드업] 1등한 학생의 성적 (구조체 연습) - Java (0) | 2023.03.02 |
[코드업] 성적표 출력 (구조체 연습) - Java (0) | 2023.03.02 |
[코드업] 데이터 재정렬 (구조체 연습) - Java (0) | 2023.03.02 |