w3resource

C Exercises: Return maximum sum such that no two elements are adjacent

C Array: Exercise-68 with Solution

Write a program in C to return the maximum sum such that no two elements are adjacent.

Pictorial Presentation:

C Exercises: Return maximum sum such that no two elements are adjacent.

Sample Solution:

C Code:

#include <stdio.h>
 
int maxSumSubseq(int arr1[], int n)
{
  int incl = arr1[0];
  int excl = 0;
  int excl_new;
  int i;
  for (i = 1; i < n; i++)
  {
     excl_new = (incl > excl)? incl: excl;
 
     incl = excl + arr1[i];
     excl = excl_new;
  }
   return ((incl > excl)? incl : excl);

}
 
int main()
{
   int arr1[] = {1, 3, 5, 9, 7, 10, 1, 10, 100};
     int n = sizeof(arr1) / sizeof(arr1[0]);
     int i;
	//------------- print original array ------------------	
	printf("The given array is :  ");
	for(i = 0; i < n; i++)
	{
	printf("%d  ", arr1[i]);
    } 
	printf("\n");
//------------------------------------------------------ 
  printf("The maximum sum from the array such that no two elements are adjacent is: %d \n", maxSumSubseq(arr1, n));
  return 0;
}

Sample Output:

The given array is :  1  3  5  9  7  10  1  10  100  
The maximum sum from the array such that no two elements are adjacent is: 122 

Flowchart:

Return maximum sum such that no two elements are adjacent

C Programming Code Editor:

Improve this sample solution and post your code through Disqus.

Previous: Write a program in C to search an element in a row wise and column wise sorted matrix.
Next: Write a program in C to find out the maximum difference between any two elements such that larger element appears after the smaller number.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.

C Programming: Tips of the Day

C Programming - What is the argument for printf that formats a long?

Put an l (lowercased letter L) directly before the specifier.

unsigned long n;
long m;

printf("%lu %ld", n, m);

Ref : https://bit.ly/3dIwfkP