전체 글
[java] 프로그래머스 (파일명 정렬) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT 문제였다. 자바로 풀이하려면 Comparator를 활용하여 정렬의 기준을 override 해주면 된다. 우선 숫자가 나오기 전까지 문자열을 가지고 알파벳 정렬을 수행한 후, 만약 같다면 숫자 부분을 가지고 숫자 정렬을 수행한다. Code import java.util..
[java] 프로그래머스 (압축) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17684 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT 문제였다. 우선 'A : 1' ~ 'Z : 26' 까지 hashmap에 put한 후, 주어진 문자열의 앞부터 한 글자씩 순회를 시작한다. 현재 s가 hashmap에 존재한다면 계속하여 문자열을 하나씩 붙여나간다. hashmap에 없는 문자가 생긴다면, 그 문자열을 hashmap에 index+1로 pu..
[java] 프로그래머스 (방금그곡) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT 문제였다. 일단 C#, D#, F#, G#, A# 을 각각 a, d, f, g, a로 치환했다. 치환한 후 곡의 플레이시간을 계산하여 곡의 음을 플레이시간만큼 만든다. 만들어진 음의 sequence에서 주어진 m이 있는지를 찾는다. 3번의 결과로 찾아진 것이 여러 ..
[java] 프로그래머스 (후보키) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/42890 코딩테스트 연습 - 후보키 [["100","ryan","music","2"],["200","apeach","math","2"],["300","tube","computer","3"],["400","con","computer","4"],["500","muzi","music","3"],["600","apeach","music","2"]] 2 programmers.co.kr Approach 2019 KAKAO BLIND RECRUITMENT 문제였다. 데이터베이스에서 후보키는 유일성과 최소성을 만족시키는 키를 말한다. 유일성(uniqueness) : 릴레이션에 있는 모든 튜플에 대해 유일하게 ..
[java] 프로그래머스 (오픈채팅방) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr Approach 2019 KAKAO BLIND RECRUITMENT 문제였다. 일단 나는 HashMap을 이용하여 구현했고, 자바에서 HashMap을 사용하면 key가 존재해도 같은 key에 대해 put을 진행하면, 나중에 put된 value로 업데이트를 해준다. 따라서 각 문자열을 공백문자(" ")로 split한 0번째 요소가 "Leave"가..
[java] 프로그래머스 (캐시) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17680 코딩테스트 연습 - [1차] 캐시 3 [Jeju, Pangyo, Seoul, NewYork, LA, Jeju, Pangyo, Seoul, NewYork, LA] 50 3 [Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul] 21 2 [Jeju, Pangyo, Seoul, NewYork, LA, SanFrancisco, Seoul, Rome, Paris, Jeju, NewYork, Rome] 60 5 [Jeju, Pangyo, S programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT..
[java] 프로그래머스 (프렌즈4블록) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17679 코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 프렌즈4블록. 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙 programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT 문제였다. 이 문제에서 해야할 과정은 크게 3가지이다. 더이상 square가 생기지 않을 때까지 밑의 세 과정을 반복한다. 주어진 board에서 square를 찾는다. square의 개수를 세고, 해당 위치의 블록을 삭제한다. 남은 블록들을 아래로 내려, b..
[java] 프로그래머스 (뉴스 클러스터링) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr Approach 2018 KAKAO BLIND RECRUITMENT 문제였다. 주어진 문자열 str1, str2 을 각각 두글자씩 잘라 list1, list2를 구성한다. list1의 각 요소들을 list2에도 존재하는지를 검사한다. 존재한다면 그 요소는 str1, str2의 교집합이 될 것이다. (그런 후, list2에서..
[java] 프로그래머스 (예상 대진표) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/12985 코딩테스트 연습 - 예상 대진표 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N programmers.co.kr Approach 2017 팁스타운 문제이다. (a + 1) / 2 와 (b + 1) / 2가 같을 때까지 앞의 과정을 반복하면서 count 를 늘려간다. 전체 사람 수 n명은 문제 풀이에 필요가 없다. 예를 들어 2번 3번으로 시작한 경우 (2 + 1) / 2 = 1, (3 + 1) / 2 = 2 -> count++ (..
[java] 프로그래머스 (영어 끝말잇기) Level 2
Problem : https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 [tank, kick, know, wheel, land, dream, mother, robot, tank] [3,3] 5 [hello, observe, effect, take, either, recognize, encourage, ensure, establish, hang, gather, refer, reference, estimate, executive] [0,0] programmers.co.kr Approach Summer/Winter Coding(~2018) 문제이다. 중복된 단어인지를 확인하기 위해 HashSet을 사용했고, 현재 단어의 첫문..