보글보글 개발일지
반응형
article thumbnail
[프로그래머스/C++] 게임 맵 최단거리
알고리즘 2022. 11. 14. 08:28

문제가 상당히 길다. 하지만 이전 문제들처럼 그냥 거리계산만 하면 된다. 기본 BFS문제에 속하는 문제이다. 맵의 시작 부분을 큐에 넣음과 동시에 BFS를 시작한다. 도달하지 않은 곳의 dist 값은 -1이고, 시작점으로부터의 거리가 dist 값에 업데이트된다. 생각해 주어야 할 것은, (n-1,m-1)번째 dist값이 -1이라면 길이 막혀서 갈 수 없는 곳이므로 -1을 출력한다는 것과, 시작점의 dist을 0으로 설정하였으므로 마지막에 값을 저장할 때 +1을 해줘야한다는 것이다. #include #include #include using namespace std; int dist[102][102]; int dx[4]={0,1,0,-1}; int dy[4]={1,0,-1,0}; int solution(v..

article thumbnail
[프로그래머스/C++] 타겟 넘버
알고리즘 2022. 11. 14. 08:05

고민하다가 모르겠어서 풀이를 보고 생각을 해 보았습니다.. DFS에 대한 완벽한 이해가 안되었던 것 같고, 뭔가 재귀인 것 같다고 생각하긴 했지만 구현 방식이 생각나지 않았다. 재귀.. 너무 어려워요 sum과 index를 기록해가며 DFS를 진행한다. 제일 먼저 sum = 0, index = 0을 매개변수로 DFS 함수를 호출하면 DFS 함수 내에서 더하기 연산(sum = sum+numbers[0], index = 1), 빼기 연산 (sum = sum-numbers[0], index = 1)을 순차적으로 진행한다. sum은 numbers의 각 원소에 맞게 더하거나 빼게 되고, index는 다음 numbers의 원소로 넘어갈 때마다 1씩 증가한다. 종료 조건은 index와 numbers의 길이가 같은 경우..

반응형