24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1927  |  回复: 8

maotian7658

木虫 (正式写手)

[求助] 矩阵生成[1, 0, -1]:满足总和为定值,累加和在限定范围

例如,生成3行20列的矩阵,每个元素取值为-1,0或1,1和-1的个数限定,3行的和分别为4,6,5,矩阵元素累加和不能大于5,也不能小于-3。同时1和-1按一定顺序填充,如1按照[13 12  3  18 20  9  16 5 4 14 17 6 11 10 7 19  8 1  2 15] 从头到尾放置,-1按照相反的顺序,一旦出现冲突,当前位置被放弃,考虑下一位置。
如:第一行,1和-1 的个数分别设定为9 和5,序列 [0 1 1 1 1 1 1 1 1 1 0 0 0 0 -1 -1 -1 -1 -1], 总和虽然等于4,但累加和(cumsum)为[0  1 2 3 4  5  6  7  8  9  9 9  9  9 8  7  6 5 4],不满足条件。
请问各位老师,如何能实现上述目的,能否给出具体代码。拜谢!

[ Last edited by maotian7658 on 2014-2-24 at 16:44 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maotian7658

木虫 (正式写手)

坐等大神解答!!!
2楼2014-02-24 16:45:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

【答案】应助回帖

可否解释一下这句话:
如1按照[13 12  3  18 20  9  16 5 4 14 17 6 11 10 7 19  8 1  2 15] 从头到尾放置,-1按照相反的顺序,一旦出现冲突,当前位置被放弃,考虑下一位置
3楼2014-02-24 17:01:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maotian7658

木虫 (正式写手)

引用回帖:
3楼: Originally posted by ju5200 at 2014-02-24 17:01:05
可否解释一下这句话:
如1按照 从头到尾放置,-1按照相反的顺序,一旦出现冲突,当前位置被放弃,考虑下一位置

谢谢围观,这句话的意思是存放1和-1的时候按照一定的优先级,也就是按照给出的这个序列。例子中矩阵每列含20个元素,共有20个位置,1是按照该序列从头到尾的次序存放,摆满9个位置为止,-1是从尾到头开始,也就是15,2,1,8...的顺序...遇到冲突(累加和不在范围内),放弃该位置,继续寻找下一个,只到摆满相应个数。
4楼2014-02-24 17:22:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

引用回帖:
4楼: Originally posted by maotian7658 at 2014-02-24 17:22:24
谢谢围观,这句话的意思是存放1和-1的时候按照一定的优先级,也就是按照给出的这个序列。例子中矩阵每列含20个元素,共有20个位置,1是按照该序列从头到尾的次序存放,摆满9个位置为止,-1是从尾到头开始,也就是1 ...

有个问题:根据题意 以第一行为例,一旦1的个数确定了 第一行的-1和0的个数也都确定了,那么现在任务时到底有多少个1 第二、三行任务也是确定1的个数
不妨设为三个未知数xyz,根据矩阵和的要求可以列出两个不等式,从而xyz实际上只有一个自由度 因而可以考虑穷举法
下面确定每一行1的位置就有问题了  因为你所给的顺序序列并不是必须遵守的顺序而是可以放弃的,那么1和-1谁的优先级高呢?还有,同样是1,前面的15和2的位置谁的优先级高呢?这些问题你都要先讲明白
5楼2014-02-24 21:17:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maotian7658

木虫 (正式写手)

引用回帖:
5楼: Originally posted by ju5200 at 2014-02-24 21:17:57
有个问题:根据题意 以第一行为例,一旦1的个数确定了 第一行的-1和0的个数也都确定了,那么现在任务时到底有多少个1 第二、三行任务也是确定1的个数
不妨设为三个未知数xyz,根据矩阵和的要求可以列出两个不等式 ...

1的个数是另外确定的,问题主要研究怎么去存放1和-1. 假设3行1的个数分别为9,10,8,-1的个数可以求出为:5,4,3. 优先级的问题:对于1,优先级别是从头到尾依次降低(13比12的高);对于-1,优先级别是从尾到头,优先级别依次降低(即:15比2的高)。
6楼2014-02-25 10:14:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

引用回帖:
6楼: Originally posted by maotian7658 at 2014-02-25 10:14:09
1的个数是另外确定的,问题主要研究怎么去存放1和-1. 假设3行1的个数分别为9,10,8,-1的个数可以求出为:5,4,3. 优先级的问题:对于1,优先级别是从头到尾依次降低(13比12的高);对于-1,优先级别是从尾到头,优先 ...

大概的解决方法应该是这样:无非一个判定条件 一个赋值语句A(n,m)=1 矩阵A是要求的矩阵 nm是对应位置的索引
只是具体实现起来可能要费一些时间
7楼2014-02-25 11:03:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maotian7658

木虫 (正式写手)

引用回帖:
7楼: Originally posted by ju5200 at 2014-02-25 11:03:31
大概的解决方法应该是这样:无非一个判定条件 一个赋值语句A(n,m)=1 矩阵A是要求的矩阵 nm是对应位置的索引
只是具体实现起来可能要费一些时间...

是的,就是要对对应的位置进行赋值,因为这个程序要嵌套进另一个程序,所有对它的效率要求比较高。可能有一些我不知道的函数或技巧,不知老兄有没有好的方法或建议?谢谢!
8楼2014-02-25 11:13:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maotian7658

木虫 (正式写手)

求高手指点!!
9楼2014-02-26 16:04:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 maotian7658 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 国自然面上和省基金B类撒花 +15 花田半亩~白 2026-04-21 15/750 2026-04-23 00:09 by prepg
[考研] 312求调剂 +3 山河似你温柔 2026-04-22 3/150 2026-04-22 20:17 by 学员JpLReM
[考博] 华师大读博 +3 xq83 2026-04-22 5/250 2026-04-22 10:42 by xq83
[教师之家] 又一批高校组建人工智能学院 师资行吗 不是骗人吗 +5 yexuqing 2026-04-19 5/250 2026-04-22 10:01 by easeheart
[论文投稿] 急需审稿人!!! +3 陆小果画大饼 2026-04-21 3/150 2026-04-21 23:54 by jzy_123456
[考博] 申博/考博 +4 啃面包的小书虫 2026-04-17 8/400 2026-04-21 16:26 by 啃面包的小书虫
[考研] 295分求调剂 +6 ?要上岸? 2026-04-17 6/300 2026-04-21 08:18 by Equinoxhua
[考研] 085600材料与化工调剂 5+3 孜孜不倦2002 2026-04-19 6/300 2026-04-20 21:25 by babero
[论文投稿] 有没有接收比较快的sci期刊呀,最好在一个月之内的,研三孩子求毕业 20+4 之护着 2026-04-16 7/350 2026-04-20 15:45 by 豆豆7758
[考研] 337求调剂 +3 jyz04 2026-04-18 3/150 2026-04-20 12:24 by 研可安
[考博] 申博 +3 Xyyx. 2026-04-18 3/150 2026-04-20 10:44 by YuY66
[考博] 湖南大学刘巧玲课题组2026年第二批次博士研究生招生信息 +3 南风观火 2026-04-18 5/250 2026-04-20 10:13 by 南风观火
[考研] 求计算机方向调剂 +3 Toffee2 2026-04-16 6/300 2026-04-19 22:37 by ll叶
[考研] 294求调剂 +8 淡然654321 2026-04-17 9/450 2026-04-19 19:51 by Equinoxhua
[考研] 求调剂 +10 小聂爱学习 2026-04-16 12/600 2026-04-19 16:51 by 中豫男
[考研] 求调剂 +6 苦命人。。。 2026-04-18 7/350 2026-04-19 16:27 by 中豫男
[考研] 接受任何调剂 +6 也就是栗子 2026-04-17 7/350 2026-04-18 17:20 by 涵竹刘
[考研] 收到复试调剂但是去不了 +8 小蜗牛* 2026-04-16 8/400 2026-04-18 11:15 by zixin2025
[考研] 260求调剂 +4 Zyt1314520.. 2026-04-17 5/250 2026-04-18 08:28 by babysonlkd
[有机交流] 二苯甲酮酸类衍生物 50+3 小白爱主人 2026-04-17 6/300 2026-04-17 18:47 by kf2781974
信息提示
请填处理意见