推荐B站视频     https://www.bilibili.com/video/av18512769?from=search&seid=10560517650951849115

动态规划——不相邻的最大子数组和(C语言)

动态规划——不相邻的最大子数组和(C语言)

int max(int a,int b)
{
	return a>b?a:b;
}
void fun(int arr[],int n)
{
	int *dp=(int*)malloc(sizeof(int)*n);
	memset(dp,0,sizeof(dp)*n);
	dp[0]=arr[0];
	dp[1]=max(arr[0],arr[1]);
	for(int i=2;i<n;i++)
		dp[i]=max(dp[i-2]+arr[i],dp[i-1]);

	printf("%d\n",dp[n-1]);

}
int main()
{
	int arr[]={1,2,4,1,7,8,3};
	fun(arr,7);
	system("pause");
	return 0;
}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-20
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2022-01-31
猜你喜欢
  • 2022-12-23
  • 2022-02-23
  • 2021-10-02
  • 2021-07-03
  • 2022-12-23
  • 2021-08-17
  • 2022-12-23
相关资源
相似解决方案