|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑
, |+ n+ I' Y) ?( ~( j7 S
$ O: O8 w; l) l6 b) s" D放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
5 i9 {0 c8 y4 d# ~5 t8 N8 Ei=03 ?; d, ^ ]9 L# Y7 U6 H1 |
" x: n1 f8 k p% Q" qb=0
0 o4 h$ t% F/ J. [6 x% I( K Z/ p. y" C6 y: X
while b!=3:
0 A% }" E( o7 B' b5 E a=i*5+1 #设最开始有这么多的苹果$ {1 k: X' @1 v- l
c=a #赋值给需要传出的变量
1 I" L0 f# N9 c4 x5 m' Q( r if a%5==1 : #如果能平均分5份苹果还剩下一个
, j$ e3 @# ?5 q. @) Q a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果
) k2 z8 m A8 F. Q( \/ J b=1# G/ i! i" w; f" O1 Z; T5 O7 B
if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个
D6 A+ j1 E1 e a=a-int(a/5)-1 #以下依次类推
" M. h8 P h/ B; c. @ b=2
/ v+ m: W4 s, Q4 ]$ `/ ^6 n7 b$ M8 y if a%5==1 :
# Z) B2 I0 {' G9 x2 \ e! X M0 O9 @ a=a-int(a/5)-1
/ I1 k& {9 I, \# | b=3
' o5 j7 J' n: E/ m# h" W" A0 f if a%5==1 :& j9 ?: c% o# a- J; B+ R6 N& U
a=a-int(a/5)-1; o/ T6 N" E3 F' S
b=4% J* G# _9 o2 F
if a%5==1 :
. A: s' J+ {1 e2 k, P #a=a-int(a/5)-1
2 B- ~/ t& R: Z; a0 o b=5 #当第五个人可以正常分苹果时跳出循环+ o+ u. Q4 \! B9 J
7 d- ~+ Z# d6 ?3 Z- B print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))3 M( \3 `2 w: ]/ T4 S$ @# u
i=i+1
( n" }8 l1 ?* B3 e7 H$ _, R `, U
3 m! [! f3 D4 i! Y3 \+ H4 @% V% eprint("最少需要"+str(c)+"个苹果")
2 F5 r- m9 w' T3 X" b! a2 m5 i! V( n* ]% X
6 M- K4 ~! m9 z! f1 S+ A" l4 r6 o
( b. r( h) u7 X$ `
论坛代码为什么放不到代码框里??
7 S9 z2 c% P: h$ f1 Z0 ^ ~5 }0 Z3 v. ~8 g8 e2 A' j
这么巧合吗?刚好是5的5次方减4
* l8 C c, T9 K1 \0 `! U
0 j" D; K3 _ u3 }8 z5 ~要减去的4是固定的,也就是5份的1,不是5个人的1- @. L7 x# m! B; I( {8 B1 S9 j1 L4 H
在while b!=5 的位置分别设置4 3 2可以用计算器试一下) k/ `8 B1 y& u% j% k$ B. F4 A
(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?
, d# P: ^5 W; c+ U9 h/ }# x( ]/ a0 r7 c: `( B
! d7 i5 _1 Q# O9 L& |2 ?% h
8 |6 T1 c8 h& s |
-
|