1 #题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
代码:
|
1
2
3
4
5
6
|
2
3
li
=
[
0
]
*
5
4
li[
0
]
=
10
5
for
i
in
range
(
1
,
5
):
6
li[i]
=
li[i
-
1
]
+
2
7
print
(
'第五个人是%d岁'
%
li[
4
])
|
运行结果:
|
1
2
3
|
[root@HK code_100]
# python code_28.py
第五个人是
18
岁
[root@HK code_100]
#
|
代码解释:
|
1
2
3
4
5
6
7
|
#思路:这个题采用递推算法解决,在初始值确定,之后数字有规律的情况下用递推算法比较合适
2
3
li
=
[
0
]
*
5
#生成一个有5个元素,值全为0的列表
4
li[
0
]
=
10
#将第一个值赋值为10
5
for
i
in
range
(
1
,
5
):
#遍历这个列表
6
li[i]
=
li[i
-
1
]
+
2
#递推算法,后一个元素的值是前一个元素的值加2
7
print
(
'第五个人是%d岁'
%
li[
4
])
#打印第五个人的岁数
|
本文转自snc_snc 51CTO博客,原文链接:http://blog.51cto.com/netsyscode/1749065
,如需转载请自行联系原作者