2018 카카오 블라인드

문제 정보는 아래 링크를 확인해주세요! [n진수 게임] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 n진수로 만든 숫자의 길이를 턴 수(t) X 인원수(m) 길이만큼 만드는 작업을 한다. 예) t = 4, m = 2라고 할 때, 2진법으로 만들 수 있는 총 숫자 집합은 (0,1,10,11,100)이며 이 2진수 숫자 집합 안에서 첫 번째 턴부터 4번째 턴까지 자기 차례에 맞는 값을 결과값에 추가해주면 된다. [소스 코드] package algorithm.programmers; /* * 2018 카카오 블라인드 * [3차] n진수 게임 *..
문제 정보는 아래 링크를 확인해주세요! [압축] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 A~Z까지 인덱스 정보를 담고 있는 데이터 집합을 만들어준다. msg 문자열에 대해 한 문자씩 분기문을 돌면서 현재 w와 다음 문자인 c를 합한 wc를 만들어주고, wc가 인덱스에 포함되어 있지 않다면, 인덱스 정보에 wc를 포함해주고 w에는 c를 넣어주고 다음 분기문을 돌리고 wc가 인덱스에 포함되어 있다면, 현재 wc를 w에 넣어주고 다음 분기문을 돌린다. 분기문을 돌때마다 해당 인덱스에대한 순서를 결과 리스트에 담아준다. [소스 코드] pa..
문제 정보는 아래 링크를 확인해주세요! [방금그곡] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 음악 정보를 담은 배열에 대한 분기문을 돌린다. 분기문을 돌면서 주어진 멜로디 정보를 포함하고 실행 순서가 빠른 음악 정보의 제목을 반환한다. 멜로디 정보를 포함하는지 확인하는 방법은 해당 음악 정보의 실행시간만큼의 멜로디 정보를 만든다. 이 때, 주의해야할점은 '#'이다. 나는 멜로디 정보를 substring하는 방법을 사용했기 때문에 한글자씩 처리했다. 따라서 멜로디 정보에 #이붙으면 두 글자로 처리되는 오류가 생길 수 있기 때문에 #을 ..
문제 정보는 아래 링크를 확인해주세요! [비밀지도] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 arr1 문자열 배열과 arr2 문자열 배열을 or 연산하고 이진수로 만든다. or 연산한 이진수의 길이가 n보다 작다면 이진수의 앞에 필요한 길이만큼 0을 추가해준다. 해당 이진수의 각각의 자릿수가 0이면 공백으로, 1이면 #으로 만들고 결과값에 추가해준다. 결과값 배열을 반환한다. [소스 코드] package algorithm.programmers; /* * 2018 KAKAO BLIND RECRUITMENT * [1차] 캐시 * */ p..
문제 정보는 아래 링크를 확인해주세요! [캐시] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 LRU(최근에 참조되지 않은 순서부터 제거하는 방법) 캐시를 구현하는 방법으로 캐시를 저장할 리스트를 하나 만들어준다. 도시 배열을 돌면서 도시 이름이 캐시에 포함되어 있다면, 해당 도시를 참조했으므로 리스트의 맨 뒤로 보내고 실행시간 +1 증가 도시 이름이 캐시에 포함되어있지 않다면, 캐시가 꽉차있는지 확인하고 꽉차있다면, 가장 오래 참조되지 않았던 캐시가 리스트의 맨앞에 존재하므로 그것을 지워주고 새로운 도시를 캐시에 추가 새로운 캐시를 추가..
문제 정보는 아래 링크를 확인해주세요! [프렌즈4블록] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 이 문제 또한 설명을 잘 따라가면 되는 문제다. 우선 기존에 들어온 1차원 String 배열을 직관적으로 다루기 쉽게 2차원 char 배열로 만들어준다. (1,1)의 요소부터 현재, 아래, 오른쪽, 오른쪽 아래의 블록을 검사하고 이 때, 4개의 블록을 바로 지우게 되면 겹쳐져있는 블록을 확인할 수 없으므로 4개의 블록을 지우기위한 2차원 boolean 배열에 인덱스 셋팅 (1,2)부터 다시 현재,아래,오른쪽,오른쪽 아래를 검사하고 2차원 ..
문제 정보는 아래 링크를 확인해주세요! [셔틀버스] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 문제 내용을 천천히 따라가면서 풀면된다. 기다리는 크루의 시간을 오름차순으로 정렬한다. 버스의 시간을 초기화해주고, 기다리는 크루가 있는지 확인 기다리는 크루가 있다면, 버스 도착시간과 수용인원을 확인 마지막 버스인지 확인 마지막 버스가 아니라면, 기다리는 크루가 있는지 없는지 확인 마지막 버스라면, 수용인원이 있는지 없는지 확인 결과를 "00:00" 포맷에 맞춰서 반환 [소스 코드] package algorithm.programmers; i..
문제 정보는 아래 링클르 확인해주세요! [뉴스 클러스터링] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 설명이 장황하게 되어있지만, 결론은 문자열에서 두 단어의 조합을 만들고합집합과 교집합을 만들라는 의미이다. 문제 접근 방법 str1과 str2로 각각 만들 수 있는 단어 조합 리스트를 만든다. 각각의 단어 조합 리스트를 통해 합집합과 교집합을 만들어준다. 주의해야할점은 만들 수 있는 집합이 없는 경우(합집합과 교집합이 0) 또는 합집합은 존재하지만, 교집합만 없는 경우 이 두가지에 유의하면서 구현하면된다. [소스 코드] package algorithm..
iron_jin
'2018 카카오 블라인드' 태그의 글 목록