|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑
4 G% F2 [$ v8 h/ q/ w" S+ m& N: N, s+ w2 y
放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
" m) S3 L+ U1 D
i=0
/ ]& }$ f! H/ Q* K) q" a8 E1 Z" F) l1 u( d9 G0 p
b=0
3 r, C7 \ \) a5 ~4 j: I1 E1 e p
8 N, S& d% j5 I! {, S& |while b!=3:* P1 m( \1 _ d5 _' B9 \& r
a=i*5+1 #设最开始有这么多的苹果# b% G, P" D* B2 O. K0 M
c=a #赋值给需要传出的变量/ _6 G/ R d7 `- S3 M# d3 a5 [
if a%5==1 : #如果能平均分5份苹果还剩下一个$ {' Z$ ~, [/ y% E* Z
a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果8 J) U' E2 R1 ?8 T$ C9 L7 n6 E" }
b=1
4 r, d0 T& R9 I; }% k6 h O if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个1 g, n: R. C' v% n" f7 ]! j
a=a-int(a/5)-1 #以下依次类推9 N3 a$ X( x! d9 y
b=2
2 L( F' T! x, R' A if a%5==1 :2 V+ n5 [# h) a5 q" u! i7 f
a=a-int(a/5)-1/ R" a* ?1 q# _& U
b=3- o" b' L6 Q( C6 [, i
if a%5==1 :6 }' V6 b7 _$ q q% X
a=a-int(a/5)-1' z1 y3 I% U. r' M" F3 t
b=4
+ l- ~# M! X3 e8 {* t if a%5==1 :
) L0 Q' \/ }, X Z6 U+ i* B, C #a=a-int(a/5)-1
4 ^* x8 p9 ?8 T6 f b=5 #当第五个人可以正常分苹果时跳出循环
- a d/ f$ @$ D1 k0 j" H4 T8 ~ P* K" F' n
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))
' P# F; `. }: I( Y1 ]) E i=i+1
+ b% a9 W( g+ i+ b+ d, k; ~' e* I1 f5 ?0 X8 ~( ]
* D; ~8 ]3 T" z: Z7 N
print("最少需要"+str(c)+"个苹果"); B, \% t% B1 j0 z# W {) W, E
! s: k6 C i& v7 f1 a( L; H0 D0 u+ ~
* h" b4 @4 p W$ ?" G7 h: h5 I0 v- b9 _
% S5 T- D' ?0 Q3 v2 M5 e论坛代码为什么放不到代码框里??
. k; [) r7 b2 s' G0 n% x1 L: }# A/ u* W9 g$ t0 e8 W9 T% N& F
这么巧合吗?刚好是5的5次方减4
4 K- ~: U5 W2 A$ e9 B7 v
% J* h* P; F D1 O4 @! }要减去的4是固定的,也就是5份的1,不是5个人的1) U) E) X. r. D
在while b!=5 的位置分别设置4 3 2可以用计算器试一下
' }( K) W$ ?" y2 m(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
" r2 i: B5 i$ ~5 O6 [
8 r5 M" p& J& ]4 v& R* ]: `* Z1 ~; t8 U, X% {
; |8 R2 F- A- q7 T( ^1 l8 F8 t
|
-
|