递归3_计算多个数字
来源:互联网 发布:游戏数据修改器 编辑:程序博客网 时间:2024/06/05 10:59
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. printf("sum = %d",numOfSum(4, 5));}/** * 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时 共有5个数相加),几个数相加有键盘控制。 f(n) = f(n-1) + aa...a(说明这里有n个a); */int numOfSum(int n,int num){ if (n == 1) { return num; }else { return numOfSum(n-1,num) + n_mum(n,num); }}int n_mum(int n,int num) { int sum = 0; while (n>0) { sum = sum*10+num; n--; } return sum;}
优化版本
/** * 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时 共有5个数相加),几个数相加有键盘控制。 f(n) = f(n-1) + aa...a(说明这里有n个a); f(4,2) = f(3,2) + 2222 = f(3,2) + (f(3,2)- f(2,2))*10 + 2; f(n,k) = f(n-1,k) + (f(n-1,k)-f(n-2,k))*10 + k */// n: n个数字 k:1~9 的数int test2(int n,int k) { if (n == 0) { return 0; } if (n == 1) { return k; } return test2(n-1, k) + (test2(n-1, k)-test2(n-2, k))*10 + k;}
0 0
- 递归3_计算多个数字
- 利用递归计算三角数字
- 数字三角形_递归_递推(动态规划)
- 第3个python程序:数字和数学计算
- JAVA_编程小案例_拆高位数字为多个个位数字
- 有 1、 2、 3、 4 个数字, 能组成多少个互不相同且无重复数字的三位数? 计算并打印出这些数字
- 递归算法以及使用递归算法计算指定数字大小的阶乘
- 15_由1、2、3、4四个数字,能组成多少个互不相同且一个数字中无重复数字的三位数?
- 偶数个数字3
- 递归计算a+aa+aaa.....+(n个a)
- 递归计算
- 计算从N个数字中取K个数字的结果集
- 写了个计算数字的控制台程序
- 不用循环,计算一串数字里面有多少个1
- 计算数字二进制中有多少个1
- 1~19这19个数字,任意多个数相加等于20的所有组合,不重复(递归)
- 产生fibonacci数列的第i个数字(递归实现,非递归实现)
- 数字计算
- mysq windows和linux安装以及常见命令文档
- Java基础collection
- iOS在更改用户头像并保存至本地沙盒目录中对于UIImagePickerController、UIAlertController的使用
- mongodb查看数据库和表的信息
- VSCode配置C++编写环境
- 递归3_计算多个数字
- MySQL数据类型之CHAR与VARCHAR及row size max=65535bytes
- 对集合类Vector和Enumeration的应用
- VLC设置串流的TTL值
- ios CAShapeLayer和UIBezierPath
- 设计模式
- UML系列图-用例图
- 设计模式 单例模式 优雅的单例模式
- CUDA编程(四)并行化我们的程序