|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑 : t$ d, |( R8 E9 |( ]
' N8 @5 `% d1 V* p' X放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
' Y1 T: Y/ k! T! y: X7 L; [i=0/ b" T8 l4 f6 Y, a- U9 _/ C
6 M0 L, G& b+ c9 b1 U: r
b=0
3 [3 n7 L; w* G5 ~ A' l1 y# L) m3 L. C8 _0 b+ k* i
while b!=3:" F: G% s, }( [
a=i*5+1 #设最开始有这么多的苹果
" p3 S& C6 O6 ? c=a #赋值给需要传出的变量0 N8 a3 ~9 F4 J) q4 p! _8 ^: M
if a%5==1 : #如果能平均分5份苹果还剩下一个6 g9 _7 a3 g% a6 K B+ [2 i
a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果1 ^: e2 D) w* t0 j6 M9 h% r
b=1
8 \- N, \6 b/ y5 W# i if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个
' B; ~6 ]* e+ R; g a=a-int(a/5)-1 #以下依次类推5 i4 ~1 T- V' @8 V- o. H
b=2
6 S# b$ @/ A# U if a%5==1 :
, x- }3 i! w9 G9 W( s5 G* N0 l a=a-int(a/5)-12 X1 l: q' A3 v/ d
b=3
& ]: i' I- a1 M- H& s if a%5==1 :3 z4 W6 G# q9 a- G& F% q9 U
a=a-int(a/5)-1
8 u3 x' l t3 [* X! w b=4
+ u! ^& ~) T; o r& O if a%5==1 :
& k2 T& B2 y5 \! P w3 ` #a=a-int(a/5)-19 x+ V; A2 e5 S0 R8 @2 n% o* v
b=5 #当第五个人可以正常分苹果时跳出循环
6 Z8 F2 M- h+ e0 G {. ~7 N$ |, a( A% \1 V; q, Q; g' y
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))% W( R1 v0 K, }0 p( x
i=i+1
* ~# d! j2 D$ {4 t+ c: P7 |: k0 @" t. `# X7 i) h
; l- \3 V4 H1 [5 F3 E3 f1 e
print("最少需要"+str(c)+"个苹果")
* Z" y& S/ ^: d2 s2 H: g' f+ u0 i, G$ ]# p' [' ]) N
* ~: E9 _7 m; M; T; i# v* h" b$ t- j
4 u" U @: y; R- c3 @论坛代码为什么放不到代码框里??
) H" Y( [( A) V) Y' [ r+ S9 h8 S' E. `! |- e8 x
这么巧合吗?刚好是5的5次方减4
6 r/ u. B3 N8 w' _" @# I. d e) q6 ~
: u3 E+ w9 g5 Q
要减去的4是固定的,也就是5份的1,不是5个人的1
/ K. p: E- m' y4 r3 x在while b!=5 的位置分别设置4 3 2可以用计算器试一下
- z3 x# \1 H) F% V4 P$ u) S1 V(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
4 c( i5 Y$ \: ]- S. D. S" \/ v* S% i- O- u! U: g5 E7 \
6 Q, S) j3 {1 O8 l$ `' P/ Y/ o- A; M+ v5 b" s& Z* l
|
-
|