摘要: 例示图例说明不可选可选已选此为原始的加权连通图。每条边一侧的数字代表其权值。---顶点D被任意选为起始点。顶点A、B、E和F通过单条边与D相连。A是距离D最近的顶点,因此将A及对应边AD以高亮表示。C, GA, B, E, FD下一个顶点为距离D或A最近的顶点。B距D为9,距A为7,E为15,F为6。因此,F距D或A最近,因此将顶点F与相应边DF以高亮表示。C, GB, E, FA, D算法继续重复上面的步骤。距离A为7的顶点B被高亮表示。CB, E, GA, D, F在当前情况下,可以在C、E与G间进行选择。C距B为8,E距B为7,G距F为11。E最近,因此将顶点E与相应边BE高亮表示。无C 阅读全文
posted @ 2012-10-18 11:26 改名字干什么 阅读(215) 评论(0) 推荐(0) 编辑
摘要: DP,从左到右,从上到下 for 一遍,如果j为跟盖房子有点像,我只算了向下的三角,有人说要算向上的三角,但是还是A了......不知道什么原因。 1 program p1063; uses math; 2 var 3 i,j,k,l,m,n:longint; 4 s:array[1..300,1..300] of char; 5 f:array[1..300,1..300] of longint; 6 ch:char; 7 begin 8 read(n); 9 for i:=1 to n do10 begin11 rea... 阅读全文
posted @ 2012-10-18 08:59 改名字干什么 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 这道题.....感觉很难,主要是我觉得很难弄出方程式;方程式为f[i,j]=min(f[i-2,j-1]+s[i,j],f[i-1,j]);表示第j组到第i个人的残疾指数的最小值。注意每次for 次数的时候,直接for 到 i div 3就可以了,之后就没有意义了。 1 program P1061; uses math; 2 var 3 i,j,k,l,m,n,x:longint; 4 s:array[1..5500] of longint; 5 f:array[-1..5500,0..2000] of longint; 6 begin 7 {assign(in... 阅读全文
posted @ 2012-10-18 08:53 改名字干什么 阅读(233) 评论(0) 推荐(0) 编辑