본문 바로가기

코딩 테스트

(2)
프로그래머스: 스타 수열 [JAVA] 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/70130 코딩테스트 연습 - 스타 수열 programmers.co.kr 풀이 전체적인 풀이 과정은 다음과 같다. 주어진 배열 속 숫자들의 개수를 카운트 (HashMap 사용), 이를 우선순위 큐를 통해 내림차순으로 정렬 (숫자, 숫자 개수) 우선순위 큐에서 개수가 많은 숫자대로 꺼내 배열을 순서대로 탐색하면 해당 숫자가 걸린 위치에서 탐색 위치가 처음이라면 뒤에 숫자가 동일하지 않다면 수열에 포함 위치가 마지막이라면 그 앞의 숫자가 동일하지 않고 수열에 포함이 안되어 있다면 수열에 포함 위치가 중간이라면 앞 뒤 숫자들에 대해 조건 탐색 후 수열에 포함 (앞 숫자를 먼저 탐색) 위의 조건대로 수열에 쌍이..
프로그래머스: 보석 쇼핑 [JAVA] 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/67258 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr 풀이 전체적인 풀이 과정은 다음과 같다. 반복문을 통해 주어진 gems 속 보석의 종류 가짓수를 파악 끝구간을 0부터 끝까지 반복문으로 하나씩 더해가며 0부터 해당 위치까지의 보석 가짓수가 전체 종류와 같은지 확인 보석 가짓수와 전체 종류가 같다면 시작 인덱스를 어디까지 줄일 수 있는 지를 체크 최종적으로 주어진 시작과 끝 인덱스를 통해 길이를 계산하여 최소 길이면 답을 최신화 문제 자체에서 효율성 ..