티스토리 뷰
문제는 위와 같으며 데이터를 튜플로 저장하고 기본 sort() 메소드를 통해 나이순을 기준으로 정렬하여 문제를 해결하였습니다.
파이썬 코드는 다음과 같습니다.
from sys import stdin
n = int(stdin.readline())
members = []
for i in range(n):
age, name = stdin.readline().split()
members.append((int(age), name)) # (나이, 이름) 튜플 타입으로 데이터를 저장
members.sort(key=lambda member: member[0]) # 나이 즉, 저장된 튜플의 0번째 데이터를 기준으로 정렬
for m in members:
print(m[0], m[1])
자바 코드는 다음과 같습니다. 자바의 경우는 HashMap<String, Object> 형태의 데이터를 만들어 리스트로 저장하고 이를 정렬하는 방식을 사용하였습니다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
List<HashMap<String, Object>> members = new ArrayList<>();
for (int i = 0; i < n; i++) {
String[] member = br.readLine().split(" ");
HashMap<String, Object> mm = new HashMap<>();
mm.put("age", Integer.parseInt(member[0]));
mm.put("name", member[1]);
members.add(mm);
}
Collections.sort(members, new Comparator<HashMap<String, Object>>() {
@Override
public int compare(HashMap<String, Object> o1, HashMap<String, Object> o2) {
Integer age1 = (Integer) o1.get("age");
Integer age2 = (Integer) o2.get("age");
return age1.compareTo(age2); // 나이를 기준으로 오름차순 정렬
}
});
for (int i = 0; i < members.size(); i++) {
System.out.println(members.get(i).get("age") + " " + members.get(i).get("name"));
}
}
}
'알고리즘' 카테고리의 다른 글
[알고리즘 / 백준] 10989 - 수 정렬하기 3 (0) | 2020.11.10 |
---|---|
[알고리즘 / 백준] 11650 - 좌표 정렬하기 (0) | 2020.11.10 |
[알고리즘 / 백준] 1427 - 소트인사이드 (0) | 2020.11.09 |
[알고리즘 / 백준] 2750 - 수 정렬하기 (0) | 2020.11.09 |
[알고리즘 / 백준] 4195 - 친구 네트워크 (0) | 2020.11.08 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 순열
- DFS
- 프로그래머스
- 수학
- EC2
- cloudfront
- Algorithm
- Dynamic Programming
- Baekjoon
- sort
- ECR
- SWIFT
- ionic
- permutation
- Combination
- 에라토스테네스의 체
- search
- 조합
- CodeDeploy
- 소수
- array
- CodeCommit
- spring
- BFS
- CodePipeline
- programmers
- java
- AWS
- string
- map
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함