|
|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑
& T9 R3 a7 k) F5 [6 I+ J8 n% M* f5 w3 [6 m& e
放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
, o) p' r2 y' S5 t6 Q* x
i=0. O) B* Y ]5 p* r, N
1 d5 h& e9 Q3 c
b=0
7 R/ r; @# ?! s# k2 C9 K" N0 \- u+ G4 O: l
while b!=3:
4 u" `# k) u! Q$ f( q a=i*5+1 #设最开始有这么多的苹果
$ B; Q% x" Z$ h: T6 [6 B8 O K c=a #赋值给需要传出的变量1 k) B& K! K7 P5 j; Z* j
if a%5==1 : #如果能平均分5份苹果还剩下一个- R" _/ \7 Z. l7 N
a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果! a$ W P3 `1 P) G( r
b=1* z3 O' o3 C6 V6 n$ F/ @
if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个
) P; |. u9 n& g; @% r( s( N Y# s a=a-int(a/5)-1 #以下依次类推
4 m/ |2 b" I# C* { b=2, x4 j9 g( A& j& g# S; k. r+ a
if a%5==1 :) [5 h. C/ c; ?6 ^5 m( H& l
a=a-int(a/5)-1) M- n0 W- I. g0 D/ M. A; p
b=3
, K5 Y) Q6 F ^9 [2 \9 L; D if a%5==1 :6 N6 _) U" H+ t1 g, f6 Y: k: T
a=a-int(a/5)-1; {' c3 J9 ~. }
b=44 m8 h" E) n; Z
if a%5==1 :
6 T8 J0 |( ?7 P# {: |9 k, e #a=a-int(a/5)-1* g+ P a% m. Y* M1 U7 o5 t2 _
b=5 #当第五个人可以正常分苹果时跳出循环% l n6 K6 v7 v0 n( x5 C
5 e& z E! k* \
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))3 v/ w7 d2 o& u% p; g. t
i=i+1( n4 U. Y0 S) Y$ W& g( V; \6 J$ T
& e9 E* C8 Q9 h2 e) A$ l
7 t+ [9 e7 i3 ~5 x. Kprint("最少需要"+str(c)+"个苹果")* ~/ j0 u, N7 u' k) P
) S& e6 M0 y/ v: h
+ f* G: w+ c; q% ~6 N }& Q% m0 s0 ^0 q
论坛代码为什么放不到代码框里??3 u r; j, h- w$ m/ ]
3 M( H: A8 p$ C) K7 V
这么巧合吗?刚好是5的5次方减4
1 ]4 i! _- [' g0 B& d% V/ |: O
6 J6 [! `8 s: V1 N2 q: p! {9 V要减去的4是固定的,也就是5份的1,不是5个人的1
4 C% B4 n, h1 R: x# ?在while b!=5 的位置分别设置4 3 2可以用计算器试一下. B( N9 P- @: M: S4 M9 F
(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
. j' H" g% {2 j' ^' C. [" D# G* X) \8 o5 @( ?3 T
3 ~7 q! N+ |2 m, z" k9 e
/ P; B( k4 b q8 p- t: r& R. {" W |
-
|