fnguswns1   1년 전

너무 안풀려서 한번 꼼수를 사용해봤는데 풀리네요 ㅋㅋㅋ... 이렇게 풀어도 되는건가요?? 

동적 프로그램 실행횟수를 어떻게 저장해야 하는지 몰라서 못풀고 있었습니다 ㅠㅠ

eric00513   1년 전

아이러니하게도, 이렇게 푸는 것이 정확한 풀이입니다.

fnguswns1   1년 전

아 다른 해답은 없는건가요? ㅠㅠ

eric00513   1년 전

결론은 피보나치 수 $F_N$을 구하는 문제입니다. 위에 첨부하신 코드는 재귀함수 방식으로 구현된 코드이고, 다른 풀이로는 지문에 쓰여 있는 두 번째 의사코드대로 구현할 수도 있습니다.

fnguswns1   1년 전

2번째 코드로 해봤는데 문제가 그 코드의 실행 횟수를 저장을 할라고 여러 방법을 사용해봤는데 안되더라고요 ㅠㅠ 재귀때문에 그런건지 전역변수로 사용해도 저장이 안돼서 방법이 있나 궁금했습니다 ㅠㅠ

eric00513   1년 전

코드의 실행 횟수는 코드1은 피보나치 수 f[n]이고, 코드2는 n-2번입니다.

f[n]을 구하려면 2번째 유사코드의 논리를 사용해서 배열로 구현하면 되고, 구했다면 printf("%d %d", f[n], n - 2);와 같이 출력하면 됩니다.

fnguswns1   1년 전

늦은 시간에 아무것도 모르는 저한테 꼼꼼히 설명해주셔서 감사합니다 ㅠㅠ 지금 당장은 전부 이해하지 못하고, 많이 알지도 못하지만 알려주신 내용을 활용해보면서 실력을 늘려보겠습니다!

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