코딩테스트

문제 정보는 아래 링크를 확인해주세요! [비밀지도] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. 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..
문제 정보는 아래 링크를 확인해주세요! [추석 트래픽] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 로그의 끝난 시간과 처리 속도를 기반으로 시작 시간을 구해준다. 끝난 시간을 기준으로 로그 데이터들을 정렬해준다. n번 째 로그 데이터의 끝난 시간보다 1초 뒤의 시간을 기준점으로 정하고, 로그 데이터들의 시작 시간을 기준으로 1초 뒤의 시간보다 더 빠르면 갯수를 추가한다.(끝난 시간으로 정렬이 되있으므로) 현재 갯수와 최댓값과 비교를 통해 최댓값을 갱신해준다. 코드 설명 문자열로 들어온 로그 데이터를 처리할 Process 클래스 변수 타..
문제 정보는 아래 링크를 확인해주세요! [영어 끝말잇기] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 이전 단어의 끝 요소와 현재 단어의 첫 요소를 비교 같으면서 단어가 리스트에 없다면, 리스트에 현재 단어를 추가 다르거나 현재 단어가 리스트에 포함되어있다면, 분기문 종료 인덱스가 단어 배열의 길이와 같다면, 분기문을 정상 종료된 동시에 탈락자가 없으므로 0 배열을 반환 분기문이 비정상 종료되었을 시(break을 통해서), 인덱스를 N으로 나눈 나머지+1은 현재 탈락자의 번호를 의미하고, 인덱스를 N으로 나눈 몫+1은 현재 탈락자의 차례..
문제 정보는 아래 링크를 확인해주세요! [점프와 순간이동] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 방법 N까지의 이동거리이므로 N에서 거꾸로 0이 될 때까지 비교해주는 Top-Down 방식으로 접근했다. N이 2로 나눠지면 나눠진 값을 N에 다시 셋팅하고, N이 2로 나눠지지 않는다면, 결과값+1을 하면서 N이 0이 될 때까지 분기문을 돌리는 방법이다. [소스 코드] package algorithm.programmers; import java.util.*; /* * 2018 summer/winter conding * 점프와 순간 이동 *..
iron_jin
'코딩테스트' 태그의 글 목록 (4 Page)