Description
DD和QQ在玩游戏,DD在地上画了一棵树(图论中的树),然后他告诉QQ这棵树的度数序列。QQ马上说这不是一棵树。DD认为自己被QQ鄙视了,他们吵了起来。
但DD随后发现自己算错了度数序列,QQ说的是对的。DD很奇怪为什么QQ反应得这么快。
现在给出一个图的度数序列,你需要做的就是像QQ一样:判断这是否可能是一棵树的度数序列。
题解
我们知道树的边数为(节点数-1)*2
累加,判断,AC
代码
var n,sum,i,x,o:longint;
begin
while (not eoln()) do
begin
read(n);
sum:=0;
for i:=1 to n do
begin
read(x);
if (x<=0) then
begin
writeln('Impossible');
o:=1;
break;
end;
sum:=sum+x;
end;
if (o=0)and(sum=(n-1)*2) then writeln('Possible')
else if (o=0) then writeln('Impossible');
readln;
end;
end.

本文介绍了一个简单的算法,用于判断给定的度数序列是否可能对应于一棵树。通过累加度数并进行特定条件的检查,可以快速确定输入序列是否符合树的特性。
1493

被折叠的 条评论
为什么被折叠?



