|
|
发表于 2021-10-1 03:01:01
|
显示全部楼层
本帖最后由 Myhui 于 2021-10-1 12:32 编辑 : c5 m0 v* e. W8 I8 U7 H; L2 U
% r `* X: n f2 o放假了,没有机床测试,用python测试了下,结果是3121吗
625等于5的5次方
5 l" J* g J. w4 B% Ci=0
3 w) t0 E0 k9 x+ q) B" e
- x3 [: D: h# i2 i T/ ~( sb=03 r- H) X3 G3 v5 B) i
1 j' S9 _& o; k$ u3 F% b/ \while b!=3:0 I" m4 ^) ]8 x/ S! ^2 u) {7 k
a=i*5+1 #设最开始有这么多的苹果
/ r9 \/ d [; R/ w4 c c=a #赋值给需要传出的变量: }! f2 V% _0 {: @7 I: T* G
if a%5==1 : #如果能平均分5份苹果还剩下一个
+ \1 @- C j* s: S a=a-int(a/5)-1 #第一个人拿走一份再吃掉一个后剩余的苹果
7 ]: i3 t, s$ o. W2 y' @& C b=1! k4 F; a2 z. ] `7 L
if a%5==1 : #如果第二个人能把剩下的苹果平均分5份苹果还剩下一个/ x- K' [3 Y! F% j i9 H* W
a=a-int(a/5)-1 #以下依次类推, m4 Z2 k$ _+ W: C; {2 R" L" |9 V `
b=29 d* ]$ }( U& A3 w: s
if a%5==1 :
8 _) g8 k4 q7 E7 g a=a-int(a/5)-1
7 C) }8 H- E9 c! D m4 } b=30 S4 u* a, V# k6 z$ t7 w% t! ?
if a%5==1 :
" e" s# d7 m% S4 S a=a-int(a/5)-15 r' S$ m. L0 b# c
b=4
" Q* j" k& s# F: ] if a%5==1 :4 r3 K7 ?) z* f) {0 K- W
#a=a-int(a/5)-1, f; _* ~. R9 o; @$ ?; q
b=5 #当第五个人可以正常分苹果时跳出循环
/ ]" W' F1 L' u( N N$ l$ X$ p5 r: O" B5 m
print("第"+str(i+1)+"次循环 到第"+str(b)+"人可分配 当前循环的苹果数量"+str(c))5 D- y( V* ^7 A
i=i+1
- U8 L! u( v% R7 V* w) d+ w) m" k% s' i% v: e
7 }4 T& I# w/ z5 z
print("最少需要"+str(c)+"个苹果")- f; n4 n* V* j8 J- e! a
^% b7 r5 q& i+ O n2 K/ u( G) P
; G5 v7 ~' ?; q+ W' z5 I2 |$ F) n% b* @
论坛代码为什么放不到代码框里??2 Q9 {3 ~( g/ G7 w( w
7 K* A( P( U! P4 a" G5 B
这么巧合吗?刚好是5的5次方减4
: f5 a1 ~& `" C% G0 Q& M" p8 z- w0 u* d4 N) r
要减去的4是固定的,也就是5份的1,不是5个人的1" w, {. L1 b5 B4 g
在while b!=5 的位置分别设置4 3 2可以用计算器试一下
7 R- @* n& w! q L7 }(5份)的(n人次方)减去4等于最小苹果数量???如何可以推导出来?6 N6 D# L; E# p* E9 ]
1 H8 \) z0 B T* Z# ]* |" d! g; T4 T- h' F% l( u
! M1 J9 V+ V9 n |
-
|