본문 바로가기

프로그래머스20

[C++][프로그래머스][Dynamic Progamming] 타일 장식물 :: seoftware 문제 설명 대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개의 나선 모양처럼 점점 큰 타일을 붙인 형태였다. 타일 장식물의 일부를 그리면 다음과 같다. 그림에서 타일에 적힌 수는 각 타일의 한 변의 길이를 나타낸다. 타일 장식물을 구성하는 정사각형 타일 한 변의 길이를 안쪽 타일부터 시작하여 차례로 적으면 다음과 같다. [1, 1, 2, 3, 5, 8, .] 지수는 문득 이러한 타일들로 구성되는 큰 직사각형의 둘레가 궁금해졌다. 예를 들어, 처음 다섯 개의 타일이 구성하는 직사각형(위에서 빨간색으로 표시한 직사각형)의 둘레는 26이다. 타일의 개수 N이 주어질 때, N.. 2020. 2. 29.
[C++][프로그래머스] 타겟넘버 - 깊이/너비 우선 탐색(DFS/BFS) :: seoftware 알고리즘 그래프에서 모든 노드를 방문해야 할 때 DFS 또는 BFS 를 사용한다. DFS(깊이우선탐색 - Depth First Search)는 그래프에서 아래로 내려갈 수 있을 때까지 갔다가 막히면 되돌아와서 다시 내려가는 탐색 방법이고 BFS(너비우선탐색 - Breadth First Search)는 그래프에서 한 노드에서 인접한 노드를 다 살핀 후 인접한 노드의 인접한 노드를 같은 방식으로 살피는 탐색 방법이다. 문제 더보기 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = .. 2020. 2. 11.