算法机考模拟题1000.函数求值

来源:互联网 发布:ticctv网络监控测试仪 编辑:程序博客网 时间:2024/06/03 19:31
Description

定义超级和函数F如下:

F(0, n) = n,对于所有的正整数n..
F(k, n) = F(k – 1, 1) + F(k – 1, 2) + … + F(k – 1, n),对于所有的正整数k和n.
 
请实现下面Solution类中计算F(k, n)的函数(1 <= k, n <= 14).
 
class Solution {
public:
       int F(int k, int n) {
             
       }
};
 
例1:F(1, 3) = 6
 
例2:F(2, 3) = 10
 
例3:F(10, 10) = 167960
 
注意:你只需要提交Solution类的代码,你在本地可以编写main函数测试程序,但不需要提交main函数的代码. 注意不要修改类和函数的名称.

考查分治思想,将一个大问题划分为一个小问题,并通过递归的方式完成小问题。
class Solution {  public:      int F(int k, int n) {          if(k==0) return n;          else{              int sum=0;              for(int i=1;i<=n;i++){                  sum+=F(k-1,i);              }              return sum;          }      }  };      


原创粉丝点击