ody
给定两个数字n和s,建立一个n × n逻辑矩阵(只有0和1),使行和和列和都等于s。另外,主对角线必须全为零。你可以假设:0 <s & lt;n < / tt > < / p > < p >, < / p > < p > < b >例子:< / b > < / p > < p > < tt > n = 10 < / tt >和< tt > = 3 < / tt >,这是一个可能的解决方案< / p > < pre类=“language-matlab”> M = 0 1 0 0 1 1 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 < / pre > < p >注意下列条件都是如此:< / p > <前类=“language-matlab”>(和(M, 1) = = 3) %列金额等于s所有(sum (M, 2) = = 3) %行金额等于s所有(诊断接头(M) = = 0) % 0对角线上islogical (M) %逻辑矩阵ndims (M) = = 2%的二维矩阵(大小(M) = = n) %方阵< / pre > < p >, < / p > < p > < b > Unscored奖金:< / b > < / p > < p >可视化结果图,< tt > < / tt >表示
% circular layout t = linspace(0,2 *pi, n+1)';Xy = [cos(t(1:end-1)) sin(t(1:end-1))];subplot(121), spy(M) subplot(122), gplot(M, xy, '*-'),轴图像
有线索吗?这道题需要很强的数学能力吗?
不完全是,想象一下在最简单的情况下我们可以使用对角线(忽略这个约束条件),解是什么样的?棋盘图案就能解决问题,不是吗?现在,我们如何绕过约束呢?
解决方案2533683.
测试套件在目录中没有函数'intlinprog'?否则适用于我的matlab上的所有案例
解决方案2533650
我的代码在我的matlab上工作,为什么它不通过测试套件?
解决方案131768.
我从来不知道什么画廊。谢谢!
你能告诉我你用了哪个图库矩阵吗?
@Payam Morsali.它是循环矩阵
制作载体[1 2 3 4 5 6 7 8 9 10]
38673个求解器
编码罗马数字
解决893
重建索引向量
解决530
返回'上'或'关闭'
390个求解器
是一个数字吗?
403个求解器
找到Matlab Central中的宝藏,并发现社区如何帮助您!
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
与当地办事处联系