Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- NEW-PAGE PRINT ON
- DP - 유한배낭
- CTS #CTS 이관 #SAP #ABAP
- transporting
- MONAT_F4
- changing value
- ALV Output Setting
- READ TABLE
- batch job
- Union-Find
- DP - 무한배낭(순서)
- qfieldname
- APPENDING CORRESPONDING
- boole_d
- SAP
- java
- BOJ_Gold
- using value
- DP - 무한배낭
- 날짜 계산 함수
- Data Browser
- SM36
- ABAP
- FOR ALL ENTRIES IN
- SAP GUI
- cfieldname
- Dictionary Search Help
- APPENDING
- 필드카탈로그
- ZPL
Archives
- Today
- Total
Jin's Library
[Silver Ⅳ] 1302 - 베스트셀러 본문
package BOJ.Silver;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
// 실버 4 베스트셀러
// HashMap
public class BOJ_1302 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
HashMap<String, Integer> map = new HashMap<>();
int MAX = 0;
while(N-->0){
String book = br.readLine();
// map.put(book, map.getOrDefault(book, 0) + 1);
if(map.get(book) == null) map.put(book, 1);
else map.put(book, map.get(book)+1); // map.replace 도 가능
MAX = Math.max(MAX, map.get(book));
}
List<String> list = new ArrayList<>();
for (Map.Entry<String, Integer> entry : map.entrySet()) {
if (entry.getValue() == MAX) list.add(entry.getKey());
}
Collections.sort(list);
// System.out.println(list);
System.out.print(list.get(0));
}
}
// for(Map.Entry<String, Integer> entry : map.entrySet()){
// entry.getValue() == N 일때 entry.getValue() 를 활용
// }
// HashMap 으로 카운팅 하고, 정렬할 수 있는지 보는 문제
// Map.Entry 는 Map 형태의 인터페이스를 만들어 for문을 돌려주거나
// Stream 사용 시 Map 형식의 데이터 처리시 사용한다.
// Map.Entry 사용하는 대표적인 두가지
// for(Map.Entry<String, Integer> entry : map.entrySet()) {
// System.out.println("entry.getKey() : " + entry.getKey());
// System.out.println("entry.getKey() : " + entry.getValue());
// }
// System.out.println( map.entrySet().stream()
// .map(Map.Entry<String, Integer>::getKey)
// .collect(Collectors.toList())
// );
// 이거 어케쓰누 ㅋㅋ
// List<Map.Entry<String, Integer>> entryList = new LinkedList<Map.Entry<String,Integer>>(map.entrySet());
// Collections.sort(entryList, new Comparator<Map.Entry<String, Integer> >() {
// public int compare(Map.Entry<String, Integer> o1,
// Map.Entry<String, Integer> o2)
// {
// return (o2.getValue()).compareTo(o1.getValue());
// }
// });'Algorithm - Java > BOJ - Silver' 카테고리의 다른 글
| [Silver Ⅳ] 18258 - 큐 2 (0) | 2025.09.30 |
|---|---|
| [Silver Ⅴ] 1316 - 그룹 단어 체커 (0) | 2025.09.30 |
| [Silver Ⅱ] 1012 - 유기농 배추 (0) | 2025.09.30 |
| [Silver I] 1283 - 단축키 지정 (0) | 2025.09.30 |
| [Silver Ⅲ] 7795 - 먹을 것인가 먹힐 것인가 (0) | 2025.09.29 |