void solve(int arr[],int ind,int sum,int n,int count)
{
if(ind==n){
if(sum>max)
max=sum;
}
else{
sum+=arr[ind];//sum
if(ind==n-1)
solve(arr,ind+1,sum,n,1);//1st call
if(ind==n-2 && count>1)
solve(arr,ind+2,sum,n,1);//2nd call
if(ind<n-1 && count<2){
count++;
solve(arr,ind+1,sum,n,count);//3rd call
}
if(ind<n-2)
solve(arr,ind+2,sum,n,1);//4th call
if(ind<n-3)
solve(arr,ind+3,sum,n,1);//5th call
}
}
は、私はロジックに関する問題がないが、variables.Iの受け渡しについて混乱していた整数sum+=arr[ind] //sum
かどうかを作ることができないのです考えてみましょうすべての呼び出しで同じ変数として渡されるか、関数の呼び出しごとに更新されますか?
Thnx ..私は答えを得ました...しかし@ user3386109 C++の答えはどういう意味ですか....それはCで違うのですか? – yobro97
参照はC++の機能です。 Cでは、ポインタを使用します。 – user3386109
Ok ...分かりました! – yobro97