Currying

Currying
어려움 함수 +40pts

Problem

Write a curry function that transforms a function into its curried form.

Examples

Input: curry((a, b, c) => a + b + c)(1)(2)(3)
Output: 6

Explanation

이 문제는 **커링(currying)** 패턴을 학습합니다. 함수형 프로그래밍의 핵심 기법 중 하나입니다. **커링이란?** 여러 인수를 받는 함수를 하나씩 인수를 받는 함수들의 체인으로 변환하는 것입니다: `f(a, b, c)` → `f(a)(b)(c)` **동작 원리** 1. 현재까지 받은 인수 개수와 필요한 인수 개수 비교 2. 충분하면 원본 함수 실행 3. 부족하면 더 많은 인수를 받는 새 함수 반환 **curry((a, b, c) => a + b + c)(1)(2)(3) 실행** 1. curried(1): args=[...

View detailed explanation →

Key Concepts

커링 패턴 fn.length 속성 재귀적 함수 반환 부분 적용
Time: O(n) Space: O(n)
solution.js
Ctrl + Enter
Run tests to see results here.