코딩 테스트 연습 80

백준 7562번 나이트의 이동 (java)

[Silver I] 나이트의 이동 - 7562문제 링크성능 요약메모리: 98092 KB, 시간: 484 ms분류너비 우선 탐색, 그래프 이론, 그래프 탐색제출 일자2025년 4월 11일 11:32:43문제 설명체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 있을까?입력입력의 첫째 줄에는 테스트 케이스의 개수가 주어진다.각 테스트 케이스는 세 줄로 이루어져 있다. 첫째 줄에는 체스판의 한 변의 길이 l(4 ≤ l ≤ 300)이 주어진다. 체스판의 크기는 l × l이다. 체스판의 각 칸은 두 수의 쌍 {0, ..., l-1} × {0, ..., l-1}로 나타낼 수 있..

[프로그래머스] Level3 [1차] 셔틀버스 (JAVA)

[level 3] [1차] 셔틀버스 - 17678문제 링크성능 요약메모리: 93.9 MB, 시간: 24.52 ms구분코딩테스트 연습 > 2018 KAKAO BLIND RECRUITMENT채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2025년 04월 09일 15:08:57문제 설명셔틀버스카카오에서는 무료 셔틀버스를 운행하기 때문에 판교역에서 편하게 사무실로 올 수 있다. 카카오의 직원은 서로를 '크루'라고 부르는데, 아침마다 많은 크루들이 이 셔틀을 이용하여 출근한다.이 문제에서는 편의를 위해 셔틀은 다음과 같은 규칙으로 운행한다고 가정하자.셔틀은 09:00부터 총 n회 t분 간격으로 역에 도착하며, 하나의 셔틀에는 최대 m명의 승객이 탈 수 있다.셔틀은 도착했을 때 도착한 순간에 대기..

[프로그래머스] Level3 파괴되지 않은 건물 (JAVA)

[level 3] 파괴되지 않은 건물 - 92344문제 링크성능 요약메모리: 214 MB, 시간: 58.97 ms구분코딩테스트 연습 > 2022 KAKAO BLIND RECRUITMENT채점결과정확성: 53.8효율성: 46.2합계: 100.0 / 100.0제출 일자2025년 03월 23일 21:10:57문제 설명문제 설명[본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.]N x M 크기의 행렬 모양의 게임 맵이 있습니다. 이 맵에는 내구도를 가진 건물이 각 칸마다 하나씩 있습니다. 적은 이 건물들을 공격하여 파괴하려고 합니다. 건물은 적의 공격을 받으면 내구도가 감소하고 내구도가 0이하가 되면 파괴됩니다. 반대로, 아군은 회복 스킬을 사용하여 건물들의 내구도를 높이려고 합니다.적의 공격과 ..

[프로그래머스] Level3 정수 삼각형 (JAVA)

[level 3] 정수 삼각형 - 43105문제 링크성능 요약메모리: 63.4 MB, 시간: 14.89 ms구분코딩테스트 연습 > 동적계획법(Dynamic Programming)채점결과정확성: 64.3효율성: 35.7합계: 100.0 / 100.0제출 일자2025년 03월 03일 21:09:42문제 설명위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다.삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성..

[프로그래머스] Level2 두 큐 합 같게 만들기 (JAVA)

[level 2] 두 큐 합 같게 만들기 - 118667문제 링크성능 요약메모리: 105 MB, 시간: 43.58 ms구분코딩테스트 연습 > 2022 KAKAO TECH INTERNSHIP채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2025년 02월 06일 15:36:24문제 설명길이가 같은 두 개의 큐가 주어집니다. 하나의 큐를 골라 원소를 추출(pop)하고, 추출된 원소를 다른 큐에 집어넣는(insert) 작업을 통해 각 큐의 원소 합이 같도록 만들려고 합니다. 이때 필요한 작업의 최소 횟수를 구하고자 합니다. 한 번의 pop과 한 번의 insert를 합쳐서 작업을 1회 수행한 것으로 간주합니다.큐는 먼저 집어넣은 원소가 먼저 나오는 구조입니다. 이 문제에서는 큐를 배열로 표현하며..

[프로그래머스] Level3 단속카메라 (JAVA)

[level 3] 단속카메라 - 42884문제 링크성능 요약메모리: 58.9 MB, 시간: 8.14 ms구분코딩테스트 연습 > 탐욕법(Greedy)채점결과정확성: 50.0효율성: 50.0합계: 100.0 / 100.0제출 일자2025년 02월 03일 14:17:51문제 설명고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다.고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카메라를 설치해야 하는지를 return 하도록 solution 함수를 완성하세요.제한사항차량의 대수는 1대 이상 10,000대 이하입니다.routes에는 차량의 이동 경로가 포함되어 있으..

[프로그래머스] Level3 베스트앨범 (JAVA)

[level 3] 베스트앨범 - 42579문제 링크성능 요약메모리: 87.9 MB, 시간: 7.26 ms구분코딩테스트 연습 > 해시채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2025년 01월 26일 14:01:02문제 설명스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다.속한 노래가 많이 재생된 장르를 먼저 수록합니다.장르 내에서 많이 재생된 노래를 먼저 수록합니다.장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다.노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, ..

[프로그래머스] Level3 야근 지수 (JAVA)

[level 3] 야근 지수 - 12927문제 링크성능 요약메모리: 70.4 MB, 시간: 130.97 ms구분코딩테스트 연습 > 연습문제채점결과정확성: 86.7효율성: 13.3합계: 100.0 / 100.0제출 일자2025년 01월 24일 13:41:30문제 설명회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다.Demi가 1시간 동안 작업량 1만큼을 처리할 수 있다고 할 때, 퇴근까지 남은 N 시간과 각 일에 대한 작업량 works에 대해 야근 피로도를 최소화한 값을 리턴하는 함수 solution을 완성해주세요.제한 사항works..

[프로그래머스] Level3 보석 쇼핑 (JAVA)

[level 3] [카카오 인턴] 보석 쇼핑 - 67258문제 링크성능 요약메모리: 83.2 MB, 시간: 67.46 ms구분코딩테스트 연습 > 2020 카카오 인턴십채점결과정확성: 33.3효율성: 66.7합계: 100.0 / 100.0제출 일자2025년 01월 22일 13:45:24문제 설명[본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.]개발자 출신으로 세계 최고의 갑부가 된 어피치는 스트레스를 받을 때면 이를 풀기 위해 오프라인 매장에 쇼핑을 하러 가곤 합니다.어피치는 쇼핑을 할 때면 매장 진열대의 특정 범위의 물건들을 모두 싹쓸이 구매하는 습관이 있습니다.어느 날 스트레스를 풀기 위해 보석 매장에 쇼핑을 하러 간 어피치는 이전처럼 진열대의 특정 범위의 보석을 모두 구매하되 특별히 ..

[프로그래머스] Level3 불량 사용자 (JAVA)

[level 3] 불량 사용자 - 64064문제 링크성능 요약메모리: 134 MB, 시간: 126.86 ms구분코딩테스트 연습 > 2019 카카오 개발자 겨울 인턴십채점결과정확성: 100.0합계: 100.0 / 100.0제출 일자2025년 01월 21일 13:32:08문제 설명개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 사용자라는 이름으로 목록을 만들어서 당첨 처리 시 제외하도록 이벤트 당첨자 담당자인 "프로도" 에게 전달하려고 합니다. 이 때 개인정보 보호을 위해 사용자 아이디 중 일부 문자를 '*' 문자로 가려서 전달했습니다. 가리고자 하는 문자 하나에 '*' 문자..