Algorithm 13

프로그래머스, 가장 먼 노드 [파이썬]

[ 문제 설명 ] n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 개인지를 return 하도록 solution 함수를 작성해주세요. 입출력 예 nvertexreturn 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 입출력 예 설명 예제의 그래프를 표현하면 아래 그림과 같고, 1번 노드에서 가장 멀리 떨어진 노드는 ..

Algorithm 2021.11.09

프로그래머스, 소수 찾기 [파이썬]

[ 문제 설명 ] 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요 입출력 예 numbers return "17" 3 "011" 2 입출력 예 설명 예제 #1 [1, 7]으로는 소수 [7, 17, 71]를 만들 수 있습니다. 예제 #2 [0, 1, 1]으로는 소수 [11, 101]를 만들 수 있습니다. 11과 011은 같은 숫자로 취급합니다. [ 문제 풀이 ] 문제는 두 가지로 분해하여 생각할수 있다. 소수를 판단하는 부분과 주어진 number로 나올수 있는 경우..

Algorithm 2021.11.09

프로그래머스, 정수 삼각형 [파이썬]

[ 문제 ] [ 문제 설명 ] 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성하세요. [ 문제 풀이 ] 우선 다이나믹 프로그래밍(DP)라는 주제를 보고 들어왔기 때문에 해당 풀이방법을 사용할려고 생각했다. 물론 그걸 안봤어도 했을것 같다. DP문제는 기본적으로 dp 테이블과 이 테이블이 이전의 값들에 의해 최적의 값으로 채워나가는 메커니즘을 가진다..

Algorithm 2021.11.09