讨论 / 142拜年 普通保护错误??
liruyuan 2010-08-06 01:19:00
点我顶贴 收藏 删除
测试结果1: 运行错误|普通保护错误

测试结果2: 运行错误|普通保护错误

测试结果3: 运行错误|普通保护错误

测试结果4: 运行错误|普通保护错误

测试结果5: 测试结果错误.错误结果为:95446

正确结果应为:97535

测试结果6: 运行错误|普通保护错误

测试结果7: 运行错误|普通保护错误

测试结果8: 测试结果错误.错误结果为:102810

正确结果应为:119438

测试结果9: 运行错误|普通保护错误

测试结果10: 运行错误|普通保护错误

恳请大牛们赐教

program Project1;

type

node=record

fromv,endv:longint;

weight:longint;

end;

var

temp:node;

b:array[1..100]of boolean ;

a:array[1..100,1..100]of longint;

elist:array[1..10000] of node;

k,l,z,p,q,i,j,m,n,s,t,w:longint;

begin

fillchar(b,sizeof(b),false);

readln(n);

for i:=1to n do

for j:=1to n do

begin

read(a[i,j]);

if i<j then begin

inc(t); elist[t].fromv:=i; elist[t].endv:=j;

elist[t].fromv:=i; elist[t].weight:=a[i,j];

end;

end;

for i:=1to t-1 do

for j:=i+1 to t do

if elist[i].weight>elist[j].weight then begin temp:=elist[i]; elist[i]:=elist[j];elist[j]:=temp; end;

k:=1; l:=1;

while s<n-1 do

begin

p:=elist[k].fromv; q:=elist[k].endv;

if (b[p]=false)or(b[q]=false) then begin w:=w+elist[k].weight; inc(k); inc(s); b[p]:=true; b[q]:=true; end

else inc(k);

end;

writeln(w);

readln(z);

end.

查看更多回复
提交回复