@rohit:i got my mistake..insteat of arr[2]=x[2]; it should be arr[2]=max{x[1],x[2]}
so now my code goes lyk this let arr[] stores the value of max amount upto each shop that they can rob. arr[1]=x[1]; arr[2]=max{x[1],x[2]}; for(i=3;i<=n;i++) { arr[i]=max{(arr[i-2]+x[i]),arr[i-1]}; } arr[n] gives the max amount that can be robbed... correct me if i am wrong. On Sun, Aug 28, 2011 at 7:37 PM, Anurag Narain <anuragnar...@gmail.com>wrote: > i tink logic which kamakshi gave is correct > > > > code for same::: > > > #include<stdio.h> > > int max(int a,int b) > { > return (a>b?a:b); > } > > int value(int a[],int l) > { > if(l<0) > return 0; > return max(a[l]+value(a,l-2),value(a,l-1)); > } > > int main() > { > int a[]={4,3,2,5,7,8}; > printf("max::%d",value(a,5)); > return 0; > > } > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@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. > -- Regards, Kamakshi kamakshi...@gmail.com -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@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.