切面条
来源:互联网 发布:商城首页广告设计 php 编辑:程序博客网 时间:2024/04/28 00:33
切面条
一根高筋拉面,中间切一刀,可以得到2根面条。
如果先对折1次,中间切一刀,可以得到3根面条。
如果连续对折2次,中间切一刀,可以得到5根面条。
那么,连续对折10次,中间切一刀,会得到多少面条呢?
思路:
由于对折次数仅为10,数据规模并不大,可以通过手算简单的完成。
对折0次,得到2根;
对折1次,得到2 * 2 - 1 = 3
对折2次,得到3 * 2 - 1 = 5
对折3次,得到5 * 2 - 1 = 9
对折4次,得到9 * 2 - 1 = 17
对折5次,得到17 * 2 - 1 = 33
对折6次,得到33 * 2 - 1 = 65
对折7次,得到65 * 2 - 1 = 129
对折8次,得到129 * 2 - 1 = 257
对折9次,得到257 * 2 - 1 = 513
对折10次,得到513 * 2 - 1 = 1025
普通递归
#include<stdio.h>
int fun(int n)
{
if(n==0)
return 2;
else
return 2*fun(n-1)-1;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d",fun(10));
}
尾递归
#include <stdio.h>
int f2(int n, int r)
{
//尾递归
if(n == 0) {
return r;
}
else
{
return f2(n - 1, 2 * r - 1);
}
}
int main()
{
printf("%d",f2(10, 2));
return 0;
}
大家想想尾递归和递归有什么区别,那么尾递归又有什么优势呢?
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- 切面条
- About Jquery Tooltip source
- Android学习笔记(十七):RadioButton.setSelected(true)不管用
- RabbitMQ Configuration
- 2017新榜大会 变革·变型·变现——百格活动
- SecureCRT 7 序列号
- 切面条
- javaWeb问题总结
- java 单例模式
- 远程链接Oracle
- awk命令详解
- UVA 1626 Brackets sequence
- Java中系统属性Properties介绍 System.getProperty()参数大全
- 【JVM】动态内存回收机制---GC (一)
- OpenEmbedded 中文手册