본문 바로가기

해시셋2

[자바, JS] 프로그래머스 - 영어 끝말잇기 (Lv2, Java, JavaScript) 문제 : Programmers-영어 끝말잇기 문제 출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 필요 알고리즘 개념 Set 해시셋을 사용해 이전에 나온 문자열이 중복으로 나왔는지 확인할 수 있어야 한다. 문자열, 파싱 문자열의 첫 문자와 마지막 문자를 확인할 수 있어야 한다. 문제에서 찾고자 하는 종료 조건은 아래의 두 가지 이다. 1. 이전에 나온 단어가 다시 나오는지 2. 직전에 나온 단어의 마지막 문자(character)가 이번에 보고 있는 단어의 첫번째 문자와 동일한지 '1'의 경우엔 Set을 사용해 중복 체크를 할 수 있다. 자바의 경우엔 HashSet을 사용하면 되고, js의 경우엔 Set을 사용해주면 된다. '2'의 경우엔.. 2022. 9. 23.
[자바] 백준 8975 - PJESMA (java) 문제 : boj8975 필요 알고리즘 개념 해시를 사용한 집합과 맵 해시를 통해 어떠한 문자열이 존재하는지 빠르게 확인이 가능해야 한다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 해시에 대해 알고 있다면 문제 파악만 잘 됬다면 어렵지 않게 풀 수 있다. N개의 문자열에 대해, M개의 문자열을 하나씩 입력받다가 N개에서 존재했던 문자열 중 ⌈N/2⌉개가 나온 경우 몇번째인지 출력해주면 된다. 예를들어 예제 입력 1을 보자.. 2022. 9. 13.