프로그래머스 - 불량 사용자
프로그래머스 2022. 2. 16. 11:08

코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr 밴 아이디에 매칭되는 유저 아이디 찾기 밴 아이디의 조합의 개수를 묻는 문제이기 때문에, 우선 각 밴 아이디가 매칭되는 문자열들을 찾아야 한다. 응모자 아이디와 밴 아이디가 다음과 같다고 할 때, 유저 아이디 밴 문자열 frodo fr*d* fradi abc1** crodo abc123 frodoc "fr*d*" 라는 밴 문자열은 "frodo","fradi" 라는 두 개의 유저 아이디와 매칭된다. 또 abc1** 은 abc123 이라는 단 한 개의 문자열과 매칭..

2020 카카오 인턴십 - 보석쇼핑 java
프로그래머스 2022. 2. 10. 13:23

코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr 1. 보석의 가짓수를 찾기 모든 종류의 보석을 포함하는 구간을 찾아야 한다. 따라서 일단 보석 배열을 순차탐색해서, 보석이 총 몇 가지 종류로 이루어져 있는지를 찾아야 한다. 간단히 HashMap 을 이용해서 보석의 총 가지수를 구했다. int jeweleryCount = 0; public void getJeweleryCount(String[] gems) { HashMap hashMap = new HashMap(); for (String gem : gems) { if (!hashMap.containsKey(ge..

2021 카카오 채용연계형 인턴십 - 표 편집 java
프로그래머스 2022. 2. 9. 13:45

코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 주요 연산 주요 연산은 총 4가지로 다음과 같다 커서 위로 이동 커서 아래로 이동 현재 커서 삭제 삭제된 커서 복구 처음 테이블이 다음과 같을 때, 모든 연산을 수행한 뒤 마지막에 존재하는 컬럼은 O, 존재하지 않는 컬럼은 X 로 표시해야 한다. 연결 리스트로 구현하기 행이 삭제되면, 이전 행과 다음 행이 연결되어야 한다. 이것을 만약 ArrayList 나 배열로 구현한다면, 삭제 후 데이터를 한 칸씩 앞으로 이..

2018 카카오 블라인드 모집 - 뉴스 클러스터링
프로그래머스 2022. 1. 20. 11:08

코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr 자카드 유사도란? 자카드 유사도란 두 집합 A 와 B 가 있을 때, (교집합의 원소의 개수/ 합집합의 원소의 개수) 로 정의된다. A= {1, 2, 3}, 집합B = {2, 3, 4}라고 할 때, 교집합 A ∩ B = {2, 3}, 합집합 A ∪ B = {1, 2, 3, 4}이 되므로, 집합 A, B 사이의 자카드 유사도 J(A, B) = 2/4 = 0.5가 된다. 자카드 유사도는 원소의 중복을 허용하는 다중집합에 대해서 확장할 수 있다. ..