자바/백준
[백준 1302] 베스트셀러
슈슈버거
2024. 8. 7. 20:56
문제
https://www.acmicpc.net/problem/1302
내가 작성한 코드
import java.util.*;
import java.io.*;
public class qor1302 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
Map<String, Integer> bookCount = new HashMap<>();
int max = 0;
for (int i = 0; i < N; i++) {
String nameOfBook = br.readLine();
if (bookCount.containsKey(nameOfBook)) {
bookCount.put(nameOfBook, bookCount.get(nameOfBook) + 1);
} else {
bookCount.put(nameOfBook, 1);
}
if (bookCount.get(nameOfBook) >= max) {
max = bookCount.get(nameOfBook);
}
}
List<String> gradeOfBook = new ArrayList<>();
for (Map.Entry<String, Integer> entry : bookCount.entrySet()) {
if(entry.getValue() >= max) {
gradeOfBook.add(entry.getKey());
}
}
Collections.sort(gradeOfBook);
System.out.println(gradeOfBook.get(0));
}
}
파이썬을 하다가 최근에 dart를 많이 만지게 되어서 java가 더 익숙할 것 같다는 생각에 급하게 갈아타기
if문을 많이 써서 매우 직관적인 코드라고 생각한다.