| 查看: 537 | 回复: 2 | |||
[求助]
matlab编程,几个正整数的和为定值,且后一个不小于前一个,求所有组合 已有1人参与
|
|
几个正整数的和为定值,且后一个不小于前一个,求所有的组合。例如,x1+x2+x3=10,x1<=x2<=x3,求所有的可能组合,用matlab编写程序。感谢! 发自小木虫Android客户端 |
» 猜你喜欢
AI 太可怕了,写基金时,提出想法,直接生成的文字比自己想得深远,还有科学性
已经有9人回复
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有12人回复
依托企业入选了国家启明计划青年人才。有无高校可以引进的。
已经有11人回复
依托企业入选了国家启明计划青年人才。有无高校可以引进的。
已经有10人回复
同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗
已经有9人回复
表哥与省会女结婚,父母去帮带孩子被省会女气回家生重病了
已经有7人回复
天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人)
已经有9人回复
有院领导为了换新车,用横向课题经费买了俩车
已经有10人回复
wurongjun
专家顾问 (职业作家)
-

专家经验: +831 - 数学EPI: 9
- 应助: 791 (博后)
- 贵宾: 0.308
- 金币: 24609
- 散金: 310
- 红花: 75
- 帖子: 3004
- 在线: 881.2小时
- 虫号: 1368482
- 注册: 2011-08-14
- 性别: GG
- 专业: 计算数学与科学工程计算
- 管辖: 数学

2楼2017-06-26 07:45:25
|
%先做一个代换使得: %x_(1)=y_(1) %x_(2)=y_(1)+y_(2) %x_(3)=y_(1)+y_(2)+y_(3) %... %x_(k)=y_(1)+y_(2)+...+y_(k) %其中y_(1)>=1; y_(i)>=0 (2<=i<=k) %最终有k*y_(1)+(k-1)*y_(2)+...+y_(k)=m %对于维度较小的 不妨直接循环 p=1; for i=1:fix(10/3) for j=0:fix((10-3*i)/(3-1)) for l=0:fix((10-3*i-(3-1)*j)/(3-2)) if 3*i+(3-1)*j+l*(3-2)==10 x{p}=cumsum([i,j,l]); p=p+1; end end end end |

3楼2017-06-26 08:30:58













回复此楼
=[x1 x2 x3];