(13)分苹果
发布时间
阅读量:
阅读量
题目描述:
共有n头牛围坐在一起,每头牛各自拥有ai个苹果。现需在这些牛之间进行苹果的转移操作,最终使所有牛所拥有的苹果数量相等。然而,每次操作仅允许从一头牛处取走恰好两个苹果,并将其转移至另一头牛处。请问,在满足上述条件的前提下,最少需要完成多少次这样的转移操作,才能实现苹果的平均分配?
解法1:
clear
clc
close all
array = input('请输入每头牛所拥有的苹果个数:');
n = length(array);
avr = sum(array)/n;%平均数
rem = mod(sum(array),n);%余数,用于判断苹果是否可以平分
flag=0;
if rem~= 0
%苹果总数不能被牛的数量整除
flag = 1;
else
for i=1:n
if mod(array(i)-avr,2)~=0
%比平均数多出来的苹果数不能被2整除
flag=1;
break
end
end
end
if flag==1
disp('不存在符合题意的情况');
else
%
全部评论 (0)
还没有任何评论哟~
