인프런 커뮤니티 질문&답변

Chickegg님의 프로필 이미지

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

12. 조합수(메모이제이션)

깂이 다르게 나오는 경우

21.07.12 22:38 작성

·

236

0

분명히 같은 2차원 배열인것 같은데 왜 값이 다르게 나오는 것인가요?? 

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(n, r) {
                let answer;
                let dy2 = Array.from(Array(n + 1), () => Array(n + 1).fill(0));
                let dy = Array(n + 1).fill(Array(n + 1).fill(0));
                console.log(dy);
                console.log(dy2);
                function DFS(n, r) {
                    if(dy[n][r] > 0) return dy[n][r];
                    if(n === r || r ===0) return 1;
                    else return dy[n][r] = DFS(n - 1, r - 1) + DFS(n - 1, r);
                }
                answer = DFS(n, r);
                return answer;
                }

            console.log(solution(5, 3)); 
        </script>
    </body>
</html>

답변 2

0

jacob w님의 프로필 이미지

2021. 08. 27. 16:54

이거 신기하네요..ㄷㄷ

아마 Array.from 과 Array().fill()이 서로 결과는 같지만 내부에서 동작하는건 달라서 서로 어떻게 실행되는지를 따져봐야될것 같네요.

0

Chickegg님의 프로필 이미지
Chickegg
질문자

2021. 07. 12. 22:46

Array.from()으로 하게 되면 강의에서 나오는 값인 10이 나오는데 Array()로 해주면 15가 나오더라구요 어디가 잘못된 것지 모르겠어요 ㅠ

Chickegg님의 프로필 이미지

작성한 질문수

질문하기