|
|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑
8 ~& Y+ b& V+ D8 ?1 g$ d
% f% y# ~7 i# ]9 t0 l: _放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
! w3 j+ \6 u$ n: i# O% U
i=0
7 s$ S+ m! x, [7 k+ H' G+ a N o/ l& M3 |; ^- A
b=09 [7 y- ]2 @/ s
& N4 }3 Z' ?# I& Q" a6 Q1 j+ N/ {
while b!=3:( J5 z8 u8 K3 w7 h
a=i*5+1 #设最开始有这么多的苹果 v* h6 a) @1 R/ `
c=a #赋值给需要传出的变量
1 w7 G# f0 f/ }: x if a%5==1 : #如果能平均分5份苹果还剩下一个8 U- I! s3 ? m' ^3 d2 L" K; B' \- d
a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果2 b7 V7 C) e( v0 h" A
b=1) f1 a/ B. s( x- D+ r0 t$ _+ l
if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个" d$ I1 @# J% y3 O4 f2 g D
a=a-int(a/5)-1 #以下依次类推
% t" i- {5 _6 O. H* ^6 h b=2
- m5 s. ]% n6 w# x" i! M; S- { if a%5==1 :
4 t: Q5 o' u! D0 Q' E! S. @ a=a-int(a/5)-1
* x& M) c o* g$ p( o4 v b=38 W5 R! j2 k* v: [
if a%5==1 :3 g1 y* r+ H; r k+ v8 N( X
a=a-int(a/5)-13 B6 ?8 y0 y8 }$ r$ O5 c$ E
b=4
) T. ^4 V2 I$ l1 [/ q) l, V if a%5==1 :
$ \0 a- m# T0 C' T B1 _% p$ w. ~ #a=a-int(a/5)-1
# N; Y7 H. }; L; V& B& e- z1 C2 S b=5 #当第五个人可以正常分苹果时跳出循环# N# v5 k4 L: r! b; K" z
- g, v- H3 ?2 @, d- B4 C7 Z
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))
5 B5 A1 g! |& p+ V& \ i=i+1
, ~# G2 [" l8 E; l1 J2 B( K+ }% K1 L+ D0 f, `5 l4 M4 j
3 @6 V: n( l9 y; y2 E' `
print("最少需要"+str(c)+"个苹果")# v& N: v) H, Y) L, t# z
: r! w, Q! {' N6 _$ ]. Q Y' G# G8 z; E0 }* o1 `! C) z3 n
) W# Y$ x$ c. X! ^9 h( r; U; u论坛代码为什么放不到代码框里??
9 v* K: s( A! P( Y2 x; k8 z7 d5 J' ^$ ^
这么巧合吗?刚好是5的5次方减4
6 R& R' {8 ` G4 ^
4 \+ j+ ?9 }% ~ ]; z, F# ^( P1 r要减去的4是固定的,也就是5份的1,不是5个人的1
' e* [5 w! g9 c& Y- Y# Z在while b!=5 的位置分别设置4 3 2可以用计算器试一下7 Q7 G4 n s( K, A7 ~
(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
( @( O/ p6 f! x% r3 Y9 ^. h: B8 Q* o1 w6 J
! b2 f1 z6 }! e& u0 X7 |$ Z
+ H* O ]' @, m4 [: m3 x+ _$ a |
-
|