pascal问题

2025-12-17 14:19:28
推荐回答(3个)
回答1:

原本有8x+1个苹果 第一个人拿了x+1个(x>=1)
所以不超过8个人,即最后一个人拿的苹果数不超过8
苹果总数不超过64个
给你个框架:
while p>0 do
begin
inc(t);p:=p-t;
if (p<0) or (p mod 8<>0) then begin f:=false;break;end;
a[t]:=t+p div 8;
if (t>1) and (a[t-1]<>a[t]) then begin f:=false;break;end;
end;
if f then break;
数组别太大,给你个思路了,要所有代码告诉我你的邮箱,给你发,不过要得奖还是自己做吧

回答2:

用简单的数学方法推了一下
设苹果总数为N个
第一个人拿了 A1=1+1/8(N-1)
第二个人拿了 A2=2+1/8(N-A1)=2+1/8(7/8*N-23/8)
因为A1=A2
所以直接解两个式子,得出的结果是N=49
验证了一下,有7个人可以拿到苹果,每个人拿7个
排布就是
1+6
2+5
3+4
4+3
5+2
6+1
7+0 (最后一个人拿了七个苹果,篮子里面就一个都没有了)

呃,我的结果就是这样
有什么问题 再提好了

回答3:

直接打表好了
看1l