剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入练气期第九层功法的修炼,
这次要修炼的目标是[数学广角──植树问题]。
本节到此结束,欲知后事如何,请看下回分解。
[机器小伟]在[工程师阿伟]的陪同下进入练气期第九层功法的修炼,
这次要修炼的目标是[数学广角──植树问题]。
正剧开始:
星历2016年02月10日 14:07:19, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起研究[数学广角──植树问题]。
[工程师阿伟]刚看到这层功法的时候,并没有发现什么,但看了[人叫板老师]画的图以后,突然有了点想法。
因为这其实就是求一个序列中元素的个数,可以这样来求:
<span style="font-size:18px;">>>> len(range(1, 100, 5));
20
>>> len(range(1, 101, 5));
20
>>> len(range(0, 101, 5));
21</span>
<span style="font-size:18px;">>>>
0米要栽1棵树。
5米要栽2棵树。
10米要栽3棵树。
15米要栽4棵树。
20米要栽5棵树。
25米要栽6棵树。
30米要栽7棵树。
35米要栽8棵树。
40米要栽9棵树。
45米要栽10棵树。
50米要栽11棵树。
55米要栽12棵树。
60米要栽13棵树。
65米要栽14棵树。
70米要栽15棵树。
75米要栽16棵树。
80米要栽17棵树。
85米要栽18棵树。
90米要栽19棵树。
95米要栽20棵树。
100米要栽21棵树。
def tmp():
for i in range(0, 101, 5):
print('{0}米要栽{1}棵树。'.format(i, len(range(0, i+1, 5))));
return;</span>
如果两端都栽,需要:
<span style="font-size:18px;">#植树问题
def plantTree(distance, spacing, isCircle):
if (not isCircle):
d = distance + 1;
print('{0}米要栽{1}棵树。'.format(distance, len(range(0, d, spacing))));
return;
if __name__ == '__main__':
plantTree(60, 3, False);</span>
<span style="font-size:18px;">>>>
总量:120, 步长:10,需要单元:12。
#植树问题
def plantTree(distance, spacing, isCircle):
d = distance;
if (not isCircle):
d += 1;
print('总量:{0}, 步长:{1},需要单元:{2}。'.format(distance, spacing, len(range(0, d, spacing))));
return;</span>
<span style="font-size:18px;">>>>
0 --> 2
1 --> 6
2 --> 10
3 --> 14
4 --> 18
5 --> 22
6 --> 26
7 --> 30
8 --> 34
9 --> 38
10 --> 42
def tmp():
for i in range(11):
print(i, '--> ', 2+4*i);</span>
<span style="font-size:18px;">>>>
1 --> 0 --> 1
3 --> 8 --> 9
5 --> 16 --> 25
7 --> 24 --> 49
9 --> 32 --> 81
11 --> 40 --> 121
13 --> 48 --> 169
15 --> 56 --> 225
def tmp():
total = 0;
for i in range(1, 16, 2):
if (i == 1):
total += 1;
else:
total += 4*i-4;
print(i, '-->', 4*i-4, '--> ', total);</span>
本节到此结束,欲知后事如何,请看下回分解。