-
https://www.acmicpc.net/problem/13414
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%2013414
해당 문제는 수강신청에 성공한 학번을 출력하는 문제다.
조건은 들어오는 순서대로 입력하며, 만약 이미 들어와 있는데 또 들어오면
앞에를 삭제하고 젤 뒤에 새로 추가해주어야 하며, 최대 수강 가능인원만큼
학번을 출력해주면 된다.
해당 문제는 map를 이용해서 해결했으며, LinkedHashMap을 이용하면 입력 순서대로 저장 가능하다.
학번을 입력받으면 Map에 있는지 판단하고 있으면 제거하고 추가 없으면 그냥 추가해준 뒤
마지막에 foreach문으로 카운트를 체크해서 출력해주었다.
문제를 다 풀고 포스팅 중 생각난 건데 위에서 입력을 받다가 map의 size가 최대 수강 인원과 같으면 그냥 빠져나오고
map를 출력해주는 것이 더 효율적으로 문제를 풀 수 있지 않을까라고 생각한다.
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 1520 내리막 길 JAVA (0) 2021.11.16 Baekjoon 1965 상자넣기 JAVA (0) 2021.11.16 Baekjoon 10282 해킹 JAVA (0) 2021.11.15 Baekjoon 15723 n단 논법 JAVA (0) 2021.11.15 Baekjoon 10825 국영수 JAVA (0) 2021.11.15 댓글