문제 설명 고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다. 고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카메라를 설치해야 하는지를 return 하도록 solution 함수를 완성하세요.입출력 예routes : [[-20,15], [-14,-5], [-18,-13], [-5,-3]]return : 2 해결 방법저는 우선순위 큐에서 가장 첫번째로 진출되는 순간에 단속카메라를 설치하는 방식으로 했습니다. 처음에 routes를 진입 지점을 기준으로 정렬 합니다. 입출력 예를 들면[[-20,15], [-18,-13], [-14,-5], [-5,-3]]이런..
문제 설명 n개의 섬 사이에 다리를 건설하는 비용(costs)이 주어질 때, 최소의 비용으로 모든 섬이 서로 통행 가능하도록 만들 때 필요한 최소 비용을 return 하도록 solution을 완성하세요.다리를 여러 번 건너더라도, 도달할 수만 있으면 통행 가능하다고 봅니다. 예를 들어 A 섬과 B 섬 사이에 다리가 있고, B 섬과 C 섬 사이에 다리가 있으면 A 섬과 C 섬은 서로 통행 가능합니다.입출력 예 n : 4costs : [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]]return : 4 해결 방법costs에서 나와 있는 것을 이용해서 행렬을 만들었습니다. 그리고 가장 짧은 것을 구합니다.입출력 예에서 가장 짧은 것은 0, 1번째 섬의 다리 길이는 1입니다. 그리고 0,..
문제 설명Leo가 본 카펫에서 갈색 격자의 수 brown, 빨간색 격자의 수 red가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해 주세요 해결 방법저는 값들의 규칙을 찾아서 값을 구했습니다.카펫에서 가장 최소 brown와 red는 8, 1입니다.여기서 red를 늘렸을 때를 아래 표처럼 됩니다. *brown, red(가로,세로) 가로, 세로는 리턴값입니다.8,1(3,3) 10,2(4,3) 12,3(5,3) 14,4(6,3) 16,5(7,3) 18,6(8,3) 20,7(9,3) X 12,4(4,4) 14,6(5,4) 16,8(6,4) 18,10(7,4) 20,12(8,4) 22,14(9,4) X X 16,9(5,5) 18,12(6,5..
문제 설명질문한 세 자리의 수, 스트라이크의 수, 볼의 수를 담은 2차원 배열 baseball이 매개변수로 주어질 때, 가능한 답의 개수를 return 하도록 solution 함수를 작성해주세요. baseball :[[123, 1, 1], [356, 1, 0], [327, 2, 0], [489, 0, 1]]return 2 : (324, 328)해결 방법숫자 야구에서는 같은 숫자가 나오면 안됩니다. 또한 0도 안된다고 합니다.숫자 야구의 작은 경우 123과 가장 마지막 경우인 987까지를 baseball 변수와 비교해서 만족하면 값을 더하는 방식을 이용했습니다.각 숫자를 비교할 때 편하게 하기 위해 string은 [ ] 참조 방식이 가능하기 때문에 to_string함수를 이용해서 int를 string으로 ..
문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다.흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 해결 방법 문자열 변수인 string은 sort함수를 사용할 수 있습니다.내림차순을 이용하면 number는 가장 큰 수를 만들어 낼 수 있습니다. 예로들면 "17"은 71로 변하기 떄문에 2~71까지 비교해서 해당 조각에 만족하는 소수를 찾아내면 됩니다.number는 기본적으로 문자열로 되어있기 때문에 정수로 변하려면 stoi함수를 이용했고71을 구했으면 2~71까지 비교하는데 7이나 1을 사용했는지 안..
문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다.노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 1. 속한 노래가 많이 재생된 장르를 먼저 수록합니다.2. 장르 내에서 많이 재생된 노래를 먼저 수록합니다.3. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래의 고유 번호를 순서대로 return 하도록 solution 함수를 완성하세요. 입출력 예genres : "classic", "pop", "classic", "classic", "pop" p..
문제 설명스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다.종류이름 얼굴동그란 안경, 검정 선글라스 상의파란색 티셔츠하의청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. 해결 방법이 문제를 해결하는 방법은 누가봐도 해시를 이용하라는 것을 대놓고 보여줍니다. 얼굴 위치에 안결과 선글라스를 저장하고, 상의에다 티셔츠를 저장하고, 하의에다 겉옷을 저장하면 됩니다.하지만 모든 입는 경..
문제 설명전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다.구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요. 해결방법이 문제를 해결하는 방법은 모든 전화번호부를 일일이 비교하는 방법을 사용하면 매우 간단합니다. 하지만 효율성 검사를 하기 때문에 좀더 적게 비교하고 빨리 답을 찾아내는 방법을 찾아야 합..
문제 설명 대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개의 나선 모양처럼 점점 큰 타일을 붙인 형태였다.타일에 적힌 수는 각 타일의 한 변의 길이를 나타낸다. 타일 장식물을 구성하는 정사각형 타일 한 변의 길이를 안쪽 타일부터 시작하여 차례로 적으면 다음과 같다. [1, 1, 2, 3, 5, 8, .] 지수는 문득 이러한 타일들로 구성되는 큰 직사각형의 둘레가 궁금해졌다. 예를 들어, 처음 다섯 개의 타일이 구성하는 직사각형(위에서 빨간색으로 표시한 직사각형)의 둘레는 26이다. 타일의 개수 N이 주어질 때, N개의 타일로 구성된 직사각형의 둘레를 return 하도..
문제 설명 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성하세요. 입출력 예 triangle : [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] result : 30 풀이 과정triangle과 동일하게 2차원 벡터를 할당해주고트라이앵글과 동일 한 위치에서 현재 위치의 가장 큰 값을 찾아내면 됩니다...