해시

    [Java] 프로그래머스 Lv.2 : 위장

    https://programmers.co.kr/learn/courses/30/lessons/42578?language=java 코딩테스트 연습 - 위장 programmers.co.kr 풀이 경우의 수 계산법만 알면 간단히 풀 수 있다. 예를 들어, 상의 A개, 하의 B개가 주어진다면 서로 다른 옷의 조합의 수는 다음과 같이 계산할 수 있다. 상의든 하의든 1개만 선택해서 입는 경우 = A+B 상의1개 하의 1개 선택해서 입는 경우 = A*B 아무것도 입지 않는 수 = 1 최종 공식 = A+B+(A*B)+1 = (A+1)*(B+1) 하지만 우리는 아무것도 입지 않는 수는 빼줘야하기 때문에 최종적으로 -1을 해주도록 한다. HashMap에 key값으로는 의상의 종류, value로는 그 개수를 넣어줄 것인데,..

    [Java] 프로그래머스 Lv.2 > 전화번호 목록

    https://programmers.co.kr/learn/courses/30/lessons/42577?language=java 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 풀이 해시문제인데 아직 해시를 잘 모르겠어서 일단.. 마음대로 풀었다^^.. 처음에는 for문을 2번 돌려서 비교했는데, 효율성 테스트에서 실패가 떴다. => 배열을 먼저 sort(정렬)해주고, for문을 한번만 돌리도록 수정했다. ( ["119", "1195524421", "97674223"]와 같이 사전순으로 정렬되니, 앞 뒤로만..

    [Java] 프로그래머스 : 완주하지 못한 선수 (feat. HashMap)

    https://programmers.co.kr/learn/courses/30/lessons/42576?language=java 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 입력 participant : 마라톤에 참여한 선수들의 이름이 담긴 String 배열 completion : 완주한 선수들의 이름이 담긴 String 배열 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자..