[2019 카카오 개발자 겨울 인턴십] 튜플
문제 : programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 분석 및 해결 집합의 원소들을 가지고 순서를 알아맞혀야 하며, 이때 주의할 점은 집합은 원소의 순서가 바뀔 수 있다는 점이다. 따라서 나는 집합을 원소의 개수별로 Map에 저장하였고, 집합의 원소가 1개인 것부터 n개인 것까지 차례로 돌아가며 순서를 유추했다. import java.util.ArrayList; imp..
2021. 4. 3.
[2019 카카오 개발자 겨울 인턴십] 징검다리 건너기
문제 - programmers.co.kr/learn/courses/30/lessons/64062 코딩테스트 연습 - 징검다리 건너기 [2, 4, 5, 3, 2, 1, 4, 2, 5, 1] 3 3 programmers.co.kr 분석 처음에 문제 해결을 위해 '디딤돌의 숫자가 연속해서 K번 0이 되는 구간이 발생하는 경우'를 구하려고 했었다. 하지만 이 방식은 완전탐색으로 이어졌고, 효율성 측면에서 실패할 수 밖에 없었다. 결과적으로 풀이를 참고하였고, [이분탐색]을 활용해 문제를 풀 수 있었다. 풀이를 참고하며 놀랐던 점은 이분탐색을 적용하는 기준이 '징검다리를 건넌 니니즈 친구들의 수'였다는 것이다. 나는 단순히 디딤돌의 숫자에 초점을 맞춰 징검다리를 건널 수 있는 니니즈 친구들의 수를 구하려고 했었기..
2021. 3. 30.