[樹論]JZOJ 2745 這是一棵樹嗎?

傳送門

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.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章