|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑 ) T1 ?* t$ R2 C+ l! ^5 C
, L4 G/ b+ n5 q; L; S! R1 `放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
- Z+ S, O+ `1 |/ g) J, Q
i=05 H* i" D) e1 G2 N* Y
6 E, o3 `6 d, a# e. Ib=0- E8 [0 y. E! W7 B5 s. u; [/ J2 W
" @; z4 \# G- Q2 g0 K, e1 ^while b!=3:4 H' [4 I @5 L p: ?
a=i*5+1 #设最开始有这么多的苹果' Q! B& b, F- z' r3 N( }' q6 ^
c=a #赋值给需要传出的变量
# {1 E% {) N, H; V! M2 Z5 T if a%5==1 : #如果能平均分5份苹果还剩下一个
9 Q+ ^& W1 U2 Y# @" m: i, R2 G3 c a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果
# e" e# ^: c {8 |& S) y b=1
4 W. z+ R( ^5 X; V. q! Y+ s3 b if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个
* m6 u1 n/ b' q: b) g2 }- ` a=a-int(a/5)-1 #以下依次类推+ h9 c- I" D$ W6 Q6 l1 T# O& O
b=2. F* z2 A. W O3 u# p
if a%5==1 :
1 q4 N i8 t% K1 S a=a-int(a/5)-16 q/ @: v; L9 z2 T
b=3' ?& {+ g& z* O* ]7 d9 q. }1 h
if a%5==1 :
% Q+ s- G/ x, p6 O6 X) B a=a-int(a/5)-11 L+ v! J" a$ `0 C
b=4
$ ?/ v7 D( d: d) L' Y# y if a%5==1 :
- [6 o" Q' m7 L5 H6 \2 T' z+ K #a=a-int(a/5)-1! `8 ~6 O* f; ?% t
b=5 #当第五个人可以正常分苹果时跳出循环
3 N# Y- \0 e' z J4 z& h5 F& T( [2 ?4 D7 B) n; ` \. p
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c)). W: f, j n+ q4 f1 j/ }# D
i=i+1
7 p4 V' x6 R2 Y
! k9 N- d( }' v* E5 O9 U( J4 w! K
- I: O! H% m& fprint("最少需要"+str(c)+"个苹果"), n* G- w2 ]( N: U# b
0 m/ J/ E G+ V7 }8 k
% W1 c* s6 ?2 z6 x8 F5 `0 n: [ c$ \7 {7 _4 B7 z% O
论坛代码为什么放不到代码框里??
8 Z7 m' K6 o) K4 T! R
) X8 C# h: K. H' H( V# H
这么巧合吗?刚好是5的5次方减4
; B+ C" \ {( u! {+ x9 L
9 ^% i2 |0 @% w0 e( ]$ r
要减去的4是固定的,也就是5份的1,不是5个人的1( s8 s% D* [/ h" Z
在while b!=5 的位置分别设置4 3 2可以用计算器试一下
& L3 l! ?# [- d(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
6 M8 H, {7 H# c* I2 Y) ?( {& i
$ ~5 t1 [! w) G+ I/ ~9 d8 T B$ V3 _- W' j0 B* \( e
: K# y3 F t7 R; Z5 H; z
|
-
|