Pascal数组递推
2015-08-23 15:54
141 查看
有一个养鸭专业户,赶了一大群鸭子出去卖。他每经过一个村庄,卖出所赶鸭子的一半再多一只,这样他经过七个村庄后,还剩下两只鸭子,编程打印输出他每经过一个村庄后卖出多少只鸭子?剩下多少只鸭子?
我点评一下,数组递推我估计在写法上应该难度不大,唯独一个可能比较难想的是,卖出的数量是卖之前数量的一半多一个,算了,列个表格
把n代换为2*n+1,卖之后的数量就会变成n,这一步,估计数学底子不好的同学要想不通了~
所以卖之前的数量是卖之后数量的2*n+1,这就是我们数组递推的依据!
var a:array[0..7] of longint; i:longint; begin a[7] := 2; for i := 7 downto 1 do a[i-1] := 2*(a[i]+1); for i := 1 to 7 do writeln('No.',i,' : ',a[i-1]-a[i]:5,a[i]:5); end.
我点评一下,数组递推我估计在写法上应该难度不大,唯独一个可能比较难想的是,卖出的数量是卖之前数量的一半多一个,算了,列个表格
卖之前 | 卖出 | 卖之后 |
n | 1/2*(n)+1 | 1/2*(n)-1 |
2*n+1 | 管他那! | n |
... | ... | ... |
所以卖之前的数量是卖之后数量的2*n+1,这就是我们数组递推的依据!
相关文章推荐
- 阿里巴巴集团2016校园招聘-Python工程师笔试题(附加题+部分答案)
- hdu1527 威佐夫博奕
- iOS 自定义动画 push/pop动画
- JQuery第四天总结
- HDOJ 5419 Victor and Toys 树状数组
- oracle 查看用户所在的表空间
- Objective-C 【多态】
- 设计模式之工厂模式(3)
- Objective-C 【多态】
- STM32标准外设库学习笔记-20150823-阅读stm32f10x.h
- android LayoutInflater三种获取方式
- webapp的优化总结
- servlet第2讲(下集)----通过HttpServlet实现一个用户登录网站(继承HttpServlet)
- JavaScript表单验证
- leetcode 162 —— Find Peak Element
- 学习日志8.23(附加转载)
- 八皇后问题
- 网站
- 回溯解决爬楼梯问题
- poj 3368 Frequent values(段树)