# [2022 KAKAO TECH INTERNSHIP](https://tech.kakao.com/2022/07/13/2022-coding-test-summer-internship/) - 제한시간 5시간 #### 1. [성격 유형 검사하기](https://school.programmers.co.kr/learn/courses/30/lessons/118666) - 프로그래머스 Lv.1 - 구현을 기본으로 하여 조건문과 반복문을 사용해 푸는 문제. #### 2. [두 큐 합 같게 만들기](https://school.programmers.co.kr/learn/courses/30/lessons/118667) - 프로그래머스 Lv.2 - 큐와 그리디를 사용해 푸는 문제. - 투 포인터를 사용해 풀 수도 있다. #### 3. [코딩 테스트 공부](https://school.programmers.co.kr/learn/courses/30/lessons/118668) - 프로그래머스 Lv.3 - DP를 사용해 풀 수 있는 문제. - 그래프로 변경해 다익스트라 알고리즘으로 풀 수도 있다. #### 4. [등산코스 정하기](https://school.programmers.co.kr/learn/courses/30/lessons/118669) - 프로그래머스 Lv.3 - 다익스트라 알고리즘을 통해 풀 수 있는 문제. - 우선순위 큐를 사용해 풀 수도 있다. #### 5. [행렬과 연산](https://school.programmers.co.kr/learn/courses/30/lessons/118670) - 프로그래머스 Lv.4 - 덱 혹은 링크드 리스트에 대한 이해와 약간의 아이디어가 필요한 문제. # [2021 카카오 채용연계형 인턴십](https://tech.kakao.com/2021/07/08/2021-%EC%B9%B4%EC%B9%B4%EC%98%A4-%EC%9D%B8%ED%84%B4%EC%8B%AD-for-tech-developers-%EC%BD%94%EB%94%A9-%ED%85%8C%EC%8A%A4%ED%8A%B8-%ED%95%B4%EC%84%A4/) - 제한시간 4시간 #### 1. [숫자 문자열과 영단어](https://school.programmers.co.kr/learn/courses/30/lessons/81301) - 프로그래머스 Lv.1 - 문자열의 replace 관련 메서드를 사용해 풀 수 있는 문제. - 스택을 사용해 풀 수도 있다. #### 2. [거리두기 확인하기](https://school.programmers.co.kr/learn/courses/30/lessons/81302) - 프로그래머스 Lv.2 - BFS, DFS 등을 사용해 풀 수 있는 문제. - 이중 for문을 사용해 풀 수도 있다. #### 3. [표 편집](https://school.programmers.co.kr/learn/courses/30/lessons/81303) - 프로그래머스 Lv.3 - 대표적으로 링크드 리스트를 사용해 풀 수 있는 문제. - 그 밖에도 다양한 풀이가 가능하다. #### 4. [미로 탈출](https://school.programmers.co.kr/learn/courses/30/lessons/81304) - 프로그래머스 Lv.4 - 우선순위 큐와 다익스트라 알고리즘을 사용해 풀 수 있는 문제. #### 5. [시험장 나누기](https://school.programmers.co.kr/learn/courses/30/lessons/81305) - 프로그래머스 Lv.5 - DFS로 정확성 테스트를 통과할 수 있다. - 하지만 효율성 테스트는 통과할 수 없다. - 파라메트릭 서치와 다이나믹 프로그래밍을 조합해 풀 수 있다. # [2020 카카오 인턴십](https://tech.kakao.com/2020/07/01/2020-internship-test/) - 제한시간 4시간 #### 1. [키패드 누르기](https://school.programmers.co.kr/learn/courses/30/lessons/67256) - 프로그래머스 Lv.1 - 2차원 배열을 사용해 풀 수 있는 문제. #### 2. [수식 최대화](https://school.programmers.co.kr/learn/courses/30/lessons/67257) - 프로그래머스 Lv.2 - 배열을 사용해 풀 수 있는 문제. #### 3. [보석 쇼핑](https://school.programmers.co.kr/learn/courses/30/lessons/67258) - 프로그래머스 Lv.3 - 투 포인터를 사용해 풀 수 있는 문제. #### 4. [경주로 건설](https://school.programmers.co.kr/learn/courses/30/lessons/67259) - 프로그래머스 Lv.3 - BFS를 통해 풀 수 있는 문제. - BFS와 우선순위 큐를 같이 사용하면 조금 더 쉽게 풀 수 있다. #### 5. [동굴 탐험](https://school.programmers.co.kr/learn/courses/30/lessons/67260) - 프로그래머스 Lv.4 - 그래프를 만들고, 그래프에 사이클이 있는지 검사해 풀 수 있는 문제. # 3개년 분석 1, 2, 3번 문제는 각각 Lv.1, 2, 3에 해당하고 5번 문제가 항상 최고 난이도의 문제로 출제된다. - 1번 문제는 주로 기본적인 코딩 지식이 있는지를 묻는 문제이다. - 2번 문제는 큐, DFS, 배열 등의 알고리즘만 적용하면 비교적 간단하게 풀 수 있는 문제가 출제된다. - 3번 문제는 2번문제보다는 비교적 어려운 알고리즘의 적용을 요구한다. - 4번 문제부터는 알고리즘과 풀이에 대한 아이디어를 요구하는 문제가 출제된다.