|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑
( Q+ M* Z$ [. w' W
1 Q) l: y$ o, a! b放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
$ {( j$ F) r) d
i=03 x: y/ x/ [0 W
3 t; w# X: [ ?, ab=0 t/ Y# ]1 [6 c4 d$ E. j+ g+ P6 J* O
+ [; {8 C% }2 e$ t8 _
while b!=3:
% ^+ D' H. X1 c" r8 m9 e7 i a=i*5+1 #设最开始有这么多的苹果2 H. O6 X* f G
c=a #赋值给需要传出的变量
) z9 u0 [' |7 f4 k if a%5==1 : #如果能平均分5份苹果还剩下一个
) E9 T/ g0 }' G4 f7 f1 C$ d+ ~ a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果
5 {/ B# P1 u9 v b=1
& b$ t3 }1 E5 l/ A if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个2 b! h v' _+ O" B# B
a=a-int(a/5)-1 #以下依次类推
! `3 o- L' T" A$ O0 o: l b=2
' M+ h- |5 N( ?0 c" R0 \ if a%5==1 :
# P$ _* z3 v2 U- q2 b6 B w; [# g a=a-int(a/5)-15 T% f4 o/ k r7 o& p) z
b=37 ]$ W" L! ~& C7 _9 \
if a%5==1 :$ p* Q7 U( F q; p# v2 r4 Q
a=a-int(a/5)-1& a0 x v3 ~& s8 l3 n/ T) A8 l+ o
b=4- B8 }% Q8 k& h5 ?/ p- c
if a%5==1 :$ k4 [/ a5 u9 ^
#a=a-int(a/5)-1
; I2 K s1 C H( T: ` b=5 #当第五个人可以正常分苹果时跳出循环
+ b5 X" E+ B3 I7 V x
! s" m; T' w2 B1 o; I5 ^0 D print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))7 ]# I/ d- e$ o+ x. {; s
i=i+1
/ C# M; o6 v; ~
! B# f. d( n# y
, b& v4 y/ f+ _$ S Gprint("最少需要"+str(c)+"个苹果")
6 ^7 g8 v: ]/ m& P" Z8 }9 o: `- i" q0 Z4 j7 |0 |" t1 Y" Q* g. A# t6 z
3 F( k2 I( { L5 M q$ Y8 q2 _/ z% a
; J1 N l# f+ e$ s+ T! U7 {论坛代码为什么放不到代码框里??2 j# Z6 |$ Q, o ?- w5 v
t* o' D" T7 k5 b7 g( @
这么巧合吗?刚好是5的5次方减4
}7 Y- V) V! p8 t& r' ~
1 R" P1 b2 E( X$ B# H- ?1 \" F要减去的4是固定的,也就是5份的1,不是5个人的1& ]+ }# T1 M+ v7 G% W
在while b!=5 的位置分别设置4 3 2可以用计算器试一下( A _3 I- B; h) p1 w
(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
& m) V0 U7 a6 U1 T8 I" x$ a
2 R* |( ~* W2 H" H# J& J R
" P5 ]7 ~5 K# C5 h, \- A
/ U' W. B6 w% Y% j. I# d |
-
|