|
|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑 . w5 Z7 N5 }) A2 b- o3 c
. E% d9 I( a% ~3 b
放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
5 e: g s* j! e' G
i=0
. n: J! H3 Z" j4 L+ m0 r
' W6 O: q9 ?, d/ l9 _b=0
) t8 R% e/ b; m8 B9 Y
0 a" A7 A% O/ x0 J; lwhile b!=3:% q, _8 f7 @: h
a=i*5+1 #设最开始有这么多的苹果) }4 _; F: c! m$ n P Z
c=a #赋值给需要传出的变量
$ l! u$ U8 z! t( h: B if a%5==1 : #如果能平均分5份苹果还剩下一个3 x7 s: [4 v; f& D5 x3 l
a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果" t$ a) Z$ m3 \5 @/ \
b=1
# V0 j. f# g' \9 I) H# P$ C if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个
* E8 ~ ]/ x: z% } a=a-int(a/5)-1 #以下依次类推
/ E3 E7 w4 _, P; h; H) c3 u2 J b=2
G. G7 O( h# {2 A$ _3 v2 O$ V if a%5==1 :1 ]. q I% h9 t6 ?9 x# a
a=a-int(a/5)-19 h5 c4 j2 A+ t- F* p P M
b=3
! _( F2 H! ~7 t# w- B" O if a%5==1 :
0 W$ ]' Y" T5 Z# U2 q* r% ~ a=a-int(a/5)-1
/ O0 j# G; |3 { t3 Z8 }! I b=4
9 @' C/ i8 g, \) |- p6 b if a%5==1 :
6 _6 J7 v, g; b {$ B, e- e #a=a-int(a/5)-1' u# d+ q% T- ]& z7 H
b=5 #当第五个人可以正常分苹果时跳出循环+ o" ?9 J4 A0 e: M# i: x& [
6 @% a9 ^) y) Q print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))
- s3 ?6 e0 d9 p( g$ X9 X9 B9 { i=i+1, n% ~2 A6 T+ U
! @5 i6 a8 i. d6 l1 p9 N$ P
! X# c& o& h1 H W6 { H$ M
print("最少需要"+str(c)+"个苹果")' D4 f l4 ^1 G* _0 n4 k
! j4 N8 h. V, E' c9 ~9 \- \. ^5 @; N+ s- v
& n/ ]: D" O/ h" ^4 q6 `+ A0 j论坛代码为什么放不到代码框里??2 p3 |* M! e, U1 l- F, w/ V! q1 q
, F- }! D$ S; B, P- @. T9 C) F" D; C
这么巧合吗?刚好是5的5次方减4
/ ?6 o- d/ \2 @# u/ ~- U! ]/ A
% v# p; H! Q9 V+ N. \; e9 i" s
要减去的4是固定的,也就是5份的1,不是5个人的1
6 q! T+ |' [" s4 G1 U在while b!=5 的位置分别设置4 3 2可以用计算器试一下, X/ \4 A5 ]7 F& ]
(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?3 X W$ Z0 c |, n
; W7 {" R }! C# D% x2 e0 j: f3 p. q" d8 C0 {. a" H0 ?
' t4 }5 t% z& N! F9 f! U
|
-
|