设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1042|回复: 0

[讨论] 2010/03/02 求高手相助Matlab程序修改求助

[复制链接]

该用户从未签到

尚未签到

发表于 2010-2-24 14:21:41 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
本帖最后由 真龍虎王 于 2010-3-2 10:44 编辑 ' k  T8 [6 U; I7 I$ a9 i
1 g) k) ^3 ?6 N5 d1 h4 W$ K
恳请版上英雄能帮助小弟1 V; B- b# A4 }4 t% r
原本题目:6 E3 I7 Y3 _) c% c* k$ p, ]5 Q" e- n
   NO              GO          TO
' u- C6 s( c6 n4 v0 z' Z    1                 0             17 o& k/ Y) g, a3 a( M: f* v! `
    2                 1             29 H: Q1 G# o! L3 d! |3 }0 ?
    3                 1             4- F! F  ~" m) M- x" b
    4                 2             3
/ A1 }( y0 a, T, `1 y. e想表达0 ^6 j6 H+ z7 g) W, Y
(1)NO=1再看TO=1找GO=0当GO=0表示结束/ P3 n* s9 ~, q( j1 A8 R# |
所以K=          TO    =            1       =[-1];
2 h( Y$ v* N7 I; k# D             NO  [     ]         1   [ -1  ]+ o+ C1 B3 c/ G5 ?! O" q
(2)NO=2再看TO=2找GO=1当GO不等于零 看跟GO一样数字的TO
' ~8 H0 \4 w* c0 B2 R# |. S/ y" n                 看TO=1找GO=0当GO=0表示结束
7 T7 h* w  i: L所以K=          TO    =             1    2    =[-1 -1;0 -1];/ v! ~, z$ G. k  q) O6 ?* l  U+ Q; t
             NO  [     ]         1   [  -1   -1      
! K) N/ v# n( z5 y                                    2       0   -1]
/ ~" Z1 Y: r/ Z/ }# @(3)NO=3再看TO=4找GO=1当GO不等于零 看跟GO一样数字的TO
9 B6 ~# c& e! Z6 F$ D2 y- O                 看TO=1找GO=0当GO=0表示结束) X* f/ q& V2 P# J2 O2 E' G
所以K=          TO    =             1    2     3    4           =[-1 -1 0 -1;0 -1 0 0;0 0 0 -1;0 0 0 0];# M: ?( j; g5 J% u4 s7 b
             NO  [     ]         1   [  -1   -1     0   -1
6 D2 U. R1 f; }8 p                                    2       0   -1     0    0+ X% l$ b0 W) c; a
                                    3       0    0     0   -1( I  l# D  a: R6 S, H# Z3 q2 p0 z% g
                                    4       0    0     0    0 ]
+ I2 f/ {# A. }8 s# Z& J(4)NO=3再看TO=3找GO=2当GO不等于零 看跟GO一样数字的TO) }. m2 x6 Z* ^1 W# O9 b
                 看TO=2找GO=1当GO不等于零 看跟GO一样数字的TO( b$ x" g2 `/ O- H8 W4 |* I
                 看TO=1找GO=0当GO=0表示结束% K4 |* e& \! t( T
所以K=          TO    =             1    2     3    4           
* H! g4 M. L2 U/ _' d3 E             NO  [     ]         1   [  -1   -1    -1   -1
  {1 y8 E: E- J- f6 C, Z                                    2       0   -1    -1    0
% ]% A+ M0 g  s3 ]                                    3       0    0     0   -1+ f5 }; u& y" X& X! F: w+ B" X
                                    4       0    0    -1    0 ]6 }2 J, @0 B( U6 P
程序:, [$ G: {+ v, ]* ~4 C" \9 k
NO=[1;2;3;4];& u! x. g% y1 l2 \
GO=[0;1;1;2];+ Y- F7 U8 s; B$ Q3 F4 v/ b# ~
TO=[1;2;4;3];8 y2 o6 @- A  _% Z  L4 o
k=zeros(length(NO),length(NO));" _3 i8 s9 T1 ?7 _: o% d
a=sub2ind(size(k),NO,TO);
5 u% g; R! ]/ B9 E& b" pk(a)=-1;
& c) D/ L$ F6 G; `1 L) ofor i=1:length(NO)
( }) K+ ], S+ C$ Y  q/ v4 B( Q    s=i;
' V6 j; _0 }# i2 p5 M0 g& T' B    while s>=2  `6 w% E. [+ V* R3 a/ }: ?
        s=find(TO==GO(s));1 n# F% U- @0 |+ g1 H
        k(NO(s),(TO(i)))=-1;' ~, A$ t8 [/ x9 o
    end. v! J1 q4 M/ A- b7 T1 R
end
% {! i$ L0 Z% ]/ |1 x/ N/ @6 j0 ~6 t
现在想改多看一个矩阵P    矩阵大小跟NO相同
, Q1 D# V4 f1 i+ c1 E/ Q如 P=[7;7;6;1]+ q9 W3 F! X' s+ m7 |5 ^
题目想改为# t% V  t: N3 U& V9 X$ z
看NO找TO值再看GO值时顺便看P值
+ ?! G% ~. J. o/ h! {( M原本K是放入-1想改为当:. }* ?  h- H- n. J* K
P=7    -1改为放入[-1 0 0;0 -1 0;0 0 -1]
- J" R) p1 R3 `4 e  =6    -1改为放入[-1 0 0;0 0 0;0 0 -1]- U: }% T2 F) f0 l
  =5    -1改为放入[0 0;0 -1;0 -1]
; [: \3 @3 p3 C$ K  =4    -1改为放入[-1 0;0 -1;0 0]1 c- `) d/ U  M1 b5 b2 w, H
  =3    -1改为放入[0;0;-1]7 l- v4 J1 B+ J$ x# l1 e
  =2    -1改为放入[0;-1;0]
; q0 e- C. \) X* P  =1    -1改为放入[-1;0;0]0 y7 Y) G7 s8 j+ Z' F4 u
目前卡关是卡在k矩阵大小是会因为P而变以及-1要改放入矩阵
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

GMT+8, 2025-4-10 15:03

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表