2016-10-17 3 views
0

숫자의 경우 N f (N) = N의 파티션에서 동일한 부분으로의 총 파트 수입니다. 주어진 수가 4 인 경우균등 분할의 총 수

예를 들어, 동일한 파티션 될 것이다

{1,1,1,1} -> 총 부품 = 4

{2,2} -> 총 부품 = 2

{4} -> 총 부품 = 1

그래서, 등분 4의 파티션의 부품의 전체 수는 7

이 질문있어 연습 면접 질문. 프로그래밍을 사용하여이를 해결하는 방법을 알고 싶습니다.

+0

스택 오버플로에 오신 것을 환영합니다! 질문하는 방법을 읽고 [mcve]를 만들 수 있습니다. 그렇게하면 우리가 당신을 도울 수 있습니다. – Katie

답변

0

N의 각기 다른 제수 d를 사용하여 N의 다른 파티션을 동일한 부분 (N/d 부분의 값 d 또는 d 부분의 값)으로 만들 수 있으므로 질문에서 기본적으로 숫자 N의 divisor sum function을 묻습니다. N/d, 당신이 선호하는 것). N의 임의의 제수 d에 대한 N/d는 다른 제수 일 뿐이므로 N/d를 합산하는 대신 제수를 간단히 합할 수 있습니다.

따라서 주어진 숫자 N에 대한 제수를 계산하는 여러 가지 방법 중 하나를 선택해야합니다. 예를 들어, RosettaCode는 a section on computing the proper divisors of a number이며 거의 필요한 것입니다 (제수 집합에 N을 추가하면됩니다. 적절한 제수는 N 그 자체를 포함하지 않는다). 약수를 설정해야만 원하는 결과를 계산할 수 있습니다 (또는 제수를 저장할 필요가 없도록 계산 된대로 각 약수를 합치십시오).