bbayu   2년 전

쉽거나 직관적으로 이해가 가는 문제들은 재귀함수나 dfs를 통해서 금방 구현할 수 있는데요.

조금 문제의 상황이 복잡해지거나 그러면 재귀를 구현하는게 참 어렵다고 느껴집니다.

dfs(int a, int b, int c) 라고 재귀를 정의한다면 a,b,c는 어떤 기준으로 잡아야 할지.

그리고 깊이 우선 탐색을 통해 맨 아래에 위치한 정점에 들렸다가 복귀하면서 실행되는 함수들을 전부 생각하며 구현하자니

머리가 아프네요.

문제를 많이 다루고 익숙해지는 방법 밖에 없을까요??

baekjoon   2년 전

질문과 큰 상관없어 보이는데, 이 문제는 재귀함수를 사용한 DFS 문제가 아닙니다.

bbayu   2년 전

아 풀이 방법을 찾던 도중 재귀함수를 사용하여 풀이를 하는것도 보게 되어서 궁금하여 질문 올렸습니다.

백준님께서 직접 댓글을 달아주시다니 영광입니다!

백준님! 문제와 상관없는 질문인데요. 재귀는 많이 풀어봄으로써 익숙해지는게 중요하겠죠?

baekjoon   2년 전

DP를 재귀함수를 이용해 구현한 것입니다.
뭐든 많이 풀어봐야 익숙해집니다.

bbayu   2년 전

네 열심히 하겠습니다. 맞은사람 메뉴를 통해서 답을 확인해보면 dp로 구현한 사람을 못찾았는데요.

현재 재귀 함수로 풀긴 했습니다만.. dp로 구현한다면 dp[n] 의 n은 어떤 기준이 되는건가요?

djm03178   2년 전

재귀함수로 dp를 구현할 수 있습니다. 재귀함수에 건네준 인자 n에 따라 dp[n]을 결정하는 함수가 되겠죠.

bbayu   2년 전

댓글 감사합니다.

현재 문제에서 n을 어떻게 잡아야할지 궁금해서요!

댓글을 작성하려면 로그인해야 합니다.