SUBSET SUM(X[1 .. n], T):
if T = 0
return T RUE
else if T < 0 or n = 0
return FALSE
else
return SUBSET SUM(X[2 .. n], T) ∨ SUBSET SUM(X[2 .. n], T − X[1])
내가 감소 배열 X를 전달할 수있는 방법으로 저를 도와주세요 [2 ... n이] 재귀?
이 내가 쓴 코드는 그것이 세그먼트 오류가 발생합니다 : 함수의 인수로 사용될 때 암시 적으로 배열을 나타내는 원래의 메모리 버퍼에 대한 포인터로 붕괴되는 C/C++에서
#include <stdio.h>
int subsetsum(int a[], int sum, int size)
{
if(sum==0)
return 1;
else if (sum<0 || size <0)
return 0;
else
return (subsetsum(a+1 , sum, size-1) || subsetsum(a+1, sum - *a, size-1));
}
`
int main(int argc, char **argv)
{
int a[]={2,4,1,3,5},x;
x=subsetsum(a,6,5);
printf("%d",x);
return 0;
}
지금까지 쓴 정확하게 당신에게 붙어 어디에있는 코드를 제시해주십시오. – jrok
코드는 다음과 같습니다. http://pastebin.com/mxg97e4x 세그먼트 화 오류가 발생합니다. – hashinclude
C 또는 C++. 고르다. 결정. 프로스퍼. – rubenvb