没有公的吗,小母牛岂能独自fuck
解决方案 »
- 响应一个按钮在编辑框显示数字问题
- 堆对象的作用域是什么呢?比如一个函数中用 new 创建一个堆对象。这个函数退出后,堆对象还存在吗?它的作用域与普通变量的作用域区别何在?
- 为什么 VC 下调用 DLL 还要一个 lib 文件才行?
- MFC开发ActiveX问题
- 单文档视图如何读入一段文本文件,并显示在View上面?
- 请问这是什么意思?
- 编译错误:fatal error C1010: unexpected end of file while looking for precompiled header directive
- CStocket 通讯问题?
- 请教:在向CEdit中添加多行文本并滚动时,如何能做到防止CEdit窗口闪烁?
- 如何操作OFFICE和WPS的PPT
- 急!如何在一个函数中释放另一个函数申请的内存〉?
- 动态打印问题
求解方法是,设第n年有a(n)只牛,容易求得:
a(n)=a(n-1)+a(n-4) (a>=5)
且初值a(1)=1,a(2)=1,a(3)=1,a(4)=1
编程易得结果。
x(0) = 0; x(1) = 1; x(2) = 1; x(3) = 1;
可以这样考虑,(n+4)年的牛有三个来源:
1. (n+3)年就有的牛 就是x(n+3)
2. (n+3)年能生的牛所生的牛 x(n+3)-x(n+2)
3. 在(n+3)年不能生但在(n+4)年能生的牛所生的牛 x(n+1)-x(n)
可以这样理解:第N年的牛数=前一年的牛数+新增加的牛数;而第N年具有生育能力的牛数,就是4年前留下来的牛数(3年前,2年前,1年前增加的牛是不具有生育能力的);当然,第N年新增加的牛数=第N年具有生育能力的牛生育的牛数,1头牛生1头牛.故有
pipi_jf(姜帆)兄的a(n)=a(n-1)+a(n-4).
感谢各位,感谢pipi_jf(姜帆)的一针见血,感谢 wistaria(听风听雨)的启示.
程序如下:
#include<iostream.h>int fib(int x);void main()
{
int nYear,number;
cout<<"请输入要求第几年:";
cin>>nYear;
number=fib(nYear);
cout<<"母牛数:"<<number<<endl;
}int fib(int x)
{
if(x==1)
return(1);
else
if(x==2)
return(1);
else
if(x==3)
return(1);
else
if(x==4)
return(2);
return(fib(x-1)+fib(x-4));
}