2019 kakao

문제 정보는 아래 링크를 확인해주세요! [블록 게임] 코딩테스트 연습 - 블록 게임 [[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,4,0,0,0],[0,0,0,0,0,4,4,0,0,0],[0,0,0,0,3,0,4,0,0,0],[0,0,0,2,3,0,0,0,5,5],[1,2,2,2,3,3,0,0,0,5],[1,1,1,0,0,0,0,0,0,5]] 2 programmers.co.kr 문제 접근 방법 검은색 블록을 놓을 수 있는 도형은 2x3과 3x2 이 두개의 직사각형 범위 안에서 확인이 가능하고, 수평으로 긴 직사각형 안에서는 윗칸의 2개의 값이 비어있어야 가능 수직으로 긴..
문제 정보는 아래 링크를 확인해주세요! [매칭 점수] 코딩테스트 연습 - 매칭 점수 매칭 점수 프렌즈 대학교 조교였던 제이지는 허드렛일만 시키는 네오 학과장님의 마수에서 벗어나, 카카오에 입사하게 되었다. 평소에 관심있어하던 검색에 마침 결원이 발생하여, 검색개발팀� programmers.co.kr 문제 접근 방법 주어진 1차원 배열에서 문자열을 하나씩 검사한다. 문자열 검사는 정규식 패턴을 통해 현재 페이지와 현재 페이지가 담고 있는 링크 페이지 정보를 가져온다. 현재 페이지에서 얻을 수 있는 기본 점수를 구한다. 기본 점수를 구할 때, 유의해야할점은 문제 주의 사항에도 언급되었듯이 단어의 반복이다. 이 점에 유의해서 기본 점수를 구한다. 현재 페이지에서 이동할 수 있는 링크 페이지 URL을 추가한다...
문제 정보는 아래 링크를 확인해주세요! [길 찾기 게임] 코딩테스트 연습 - 길 찾기 게임 [[5,3],[11,5],[13,3],[3,5],[6,1],[1,3],[8,6],[7,2],[2,2]] [[7,4,6,9,1,8,5,2,3],[9,6,5,8,1,4,3,2,7]] programmers.co.kr 문제 접근 방법 제공받은 2차원 배열을 Node라는 클래스로 재구성하고, 리스트에 담는다. 리스트를 정렬해주는데, 정렬 순서는 y를 내림차순 - x를 오름차순으로 정렬해준다. 리스트의 요소들을 왼쪽과 오른쪽으로 나눠줄 두 개의 리스트를 만들어준다. 리스트의 첫 번째 있는 Node를 꺼내오고, (탑노드라고 부르겠다) 리스트의 다른 요소들의 x 값이 탑노드의 x값보다 작으면 왼쪽 리스트에 탑노드의 x값보다 크면..
문제 정보는 아래 링크를 확인해주세요! [무지의 먹방 라이브] 코딩테스트 연습 - 무지의 먹방 라이브 programmers.co.kr 문제 접근 방법 음식의 시간이 가장 적은 순으로 저장하고, 정렬한다. 시간이 가장 적은 음식부터 다 먹는데 걸리는 시간이 k보다 작으면 k에서 그 시간만큼 빼주고, 다음 음식의 시간에서 현재 음식 시간만큼 빼준다. k보다 클거나 같을 때는 해당 음식 시간 내에 다 먹지 못한다는 의미이므로, 남은 음식의 길이로 k를 나눠주어 몇 번째 먹을 차례인지 구해주고, 현재 남은 음식들 중에 몇 번째 먹을 차례인지 구해준다. [소스 코드] package algorithm.programmers; import java.util.*; /* * 2019 카카오 블라인드 * 무지의 먹방 라이브..
문제 정보는 아래 링크를 확인해주세요! [후보키] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 컬럼들로 만들 수 있는 조합을 만든다 (비트마스킹) 현재 비트마스킹 조합에 해당하는 컬럼 조합을 만들고 SET 자료구조에 담는다. 만든 컬럼 조합의 수가 로우의 수랑 매칭이 돼야 후보키의 조건을 만족하므로 이를 검사한다. 현재 만든 조합에 대한 비트마스킹이 결과 리스트에 있는 값들과 부분집합인지 검사하고(&연산), 부분집합이 아니라면, 결과 리스트에 추가한다. 비트마스킹이란? n개의 값을 가지고 만들 수 있는 조합을 비트 연산을 통해 문제에서 ..
문제 정보는 아래 링크를 확인해주세요! [실패율] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 실패 횟수를 저장할 배열을 만들고, 스테이지 배열을 통해 스테이지마다 실패 횟수를 저장 해당 스테이지마다 문제에서 제시된 실패율 공식을 통해 실패율을 구해주고, 실패율을 내림차순으로 정렬해줄 자료구조를 선택한 다음 이 자료구조에 실패율을 추가해준다. 문제에서 유의해야할 점은 실패율을 구할 때 공식이 (실패 횟수/현재 스테이지 도전자 수) 이다. 현재 스테이지의 도전자 수는 이전 스테이지에서 실패했던 인원을 포함하면 안된다는 점에 유의하며 문제를..
문제 정보는 아래 링크를 확인해주세요! [오픈채팅방] 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr [문제 접근 방법] 채팅방의 로그 기록에 대한 record 배열을 분기문 돌린다. 분기문마다 채팅방의 상태를 공백을 기준으로 split하고, 입장/퇴장/닉네임 변경에 대해서 조건문을 통해 해당 조건에 맞는 데이터 처리를 한다. 유의해야할 점은 입장/닉네임 변경의 경우 split을 하면 데이터 길이가 3이지만, 퇴장의 경우 닉네임에 대한 데이터가 없으므로 데이터 길이가 2라는 것에 유의해야하고 닉네임을 변경하는..
iron_jin
'2019 kakao' 태그의 글 목록