코딩테스트/99클럽

99클럽 코테 스터디 21일차 TIL - Pascal's Triangle

꼽파 2024. 8. 12. 09:08


/**
 * @param {number} numRows
 * @return {number[][]}
 */
function generate(numRows) {
    // 첫 번째 행을 포함한 삼각형 초기화
    const triangle = [[1]];
    
    // 두 번째 행부터 numRows까지 각 행을 생성
    for (let i = 1; i < numRows; i++) {
        const prevRow = triangle[i - 1];  // 삼각형에서 마지막 행을 가져옴
        const newRow = [1];  // 새로운 행을 1로 시작
        
        // 중간 값 계산
        for (let j = 1; j < i; j++) {
            newRow.push(prevRow[j - 1] + prevRow[j]);
        }
        
        newRow.push(1);  // 행을 1로 마무리
        triangle.push(newRow);  // 새로운 행을 삼각형에 추가
    }
    
    return triangle;
}
728x90