작성
·
114
0
function solution(n) {
if (n == 0) return "";
return solution(Math.floor(n / 2)) + String(n % 2);
}
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
제시하신 코드는 주어진 숫자 n
을 이진수로 변환하여 문자열로 반환하는 재귀 함수입니다. n
이 0일 경우, 빈 문자열(""
)을 반환합니다. 그렇지 않을 경우, n
을 2로 나눈 몫을 다시 같은 함수에 넣어 재귀적으로 호출하고, 그 결과에 n
을 2로 나눈 나머지를 문자열로 변환하여 이어붙인 것을 반환합니다. 이렇게 하면 answer
변수 없이도 n
을 이진수로 표현한 문자열을 얻을 수 있습니다.
질문하신 “answer 변수 없이 풀기”에 대하여 제시하신 코드는 이미 해당 조건을 만족하고 있습니다. 재귀를 활용하여 간단하면서도 효율적으로 문제를 해결하는 좋은 예입니다.