码迷,mamicode.com
首页 > 其他好文 > 详细

递归问题

时间:2015-07-17 15:50:26      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:

http://kyxxgl.nbu.edu.cn/oj/problem.php?id=1010

 

对于学习递归非常好的题目

 

 1 #include "stdio.h"
 2 int n;
 3 int a[100];
 4 int max(int a,int b)
 5 {
 6     return a>b?a:b;
 7 }
 8 int eat(int limit,int i)
 9 {
10     int max1=0,max2=0;
11     if(i==n)
12     {
13         if(a[i]<=limit)
14             return a[i];
15         else
16             return 0;
17     }
18     if(a[i]<=limit)
19     {
20         max1=eat(limit-a[i],i+1)+a[i];
21         max2=eat(limit ,i+1);
22     }    
23     else
24         max2=max1=eat(limit ,i+1);    
25     return max( max1,max2 );
26 }
27 main()
28 {
29     int limit;
30     scanf("%d%d",&limit,&n);
31     for(int i=1;i<=n;i++)
32         scanf("%d",&a[i]);
33     printf("%d",eat(limit,1));
34 } 

 

递归问题

标签:

原文地址:http://www.cnblogs.com/threezj/p/4654443.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!