@Rahul

#include<stdio.h>
#include<stdlib.h>
int nondecresing_maxsum(int *a,int n,int k)
{  int sum=0,i,count=k+1,prev_num=a[0],*dp,count1=0;;
   dp=(int *)malloc(sizeof(int)*(k+1));
   for(i=0;i<n;++i)
     if(prev_num<=a[i])
      {  sum+=a[i];
         prev_num=a[i];
                 dp[count1%(k+1)]=a[i];
                 count1++;
                 count--;
            if(!count)
            {  sum-=dp[(count1)%(k+1)];
                   count++;
            }
          }
   return sum;
}
int main()
{  int *arr,arr_size,i,k;
   printf("give array size and k");
   scanf("%d%d",&arr_size,&k);
   arr=(int *)malloc(sizeof(int)*(arr_size+1));
   printf("give elements");
   for(i=0;i<arr_size;++i)
     scanf("%d",&arr[i]);
    printf(" %d",nondecresing_maxsum(arr,arr_size,k));
}

this is my first post
plz correct me if im wrong....
but this wil not work if all array numbers r negetive...

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algoge...@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to