例如:将50可以拆分成15+15+20,
或者拆成16 14 20这种的,但是每个数字不能小于10
你好,可以这样做:
q = [];
for i = 10:50
for j = 10:50
for k = 10:50
if(i+j+k==50)
q = [q;[i,j,k]];
elseif(i+j+k>50)
break;
end
end
end
end
q = unique(q,'rows') %q就是你需要的
枚举效果,最后得到两百多组:
每一行都有三个数分别是i,j,k
q =
10 10 30
10 11 29
10 12 28
10 13 27
10 14 26
10 15 25
10 16 24
10 17 23
10 18 22
10 19 21
10 20 20
........
27 12 11
27 13 10
28 10 12
28 11 11
28 12 10
29 10 11
29 11 10
30 10 10
太多了,只列举了头尾,有帮助还请题主给个采纳支持一下答主哦,谢谢啦