Hiho1507 可疑的記錄

2021-07-30 17:59:22 字數 1030 閱讀 2290

可疑的記錄

小hi有一棵n個節點的樹,編號1-n,其中1號節點是整棵樹的根。他把這棵樹的n-1條邊記錄成n-1行,每行2個整數a和b,表示a是b的父節點。  

喜歡惡作劇的小ho在小hi的記錄裡加了一行兩個整數,於是小hi不得設法找出這行可疑的記錄。具體來說,如果去掉某一行之後,餘下n-1行按小hi的規則(a是b的父節點)恰好能構成一棵n個節點的樹,並且滿足編號恰好是1-n且1號節點是根,那麼被去掉的一行就被視為可疑的。  

你能幫小hi找出所有可疑的記錄嗎?

第一行包含乙個整數n,表示樹的節點數目。  

以下n行每行兩個整數a和b,表示a是b的父節點。  

對於30%的資料,1 <= n <= 1000  

對於100%的資料, 1 <= n <= 100000, 1 <= a, b <= n

輸入保證合法。

輸出一行包含若干個從小到大的整數,表示可疑的行號。(行號從1開始)

樣例輸入

3

1 21 3

1 3

樣例輸出

2 3

當時沒做出來,想的太複雜了,本題最重要的條件應該是n個結點,n條邊的樹,任意一棵n個結點的樹的邊樹都是n-1.

只要發現這一點就不難發現這題的做法,就是乙個結點在y上出現了兩次時,肯定這一行有錯。此時任意去掉一條邊即可。

還有一種情況就是1為根節點,即1為第二列時選中。

**:#include

#include

#include

#include 

#include

#include

#include

using namespace std;

int x[100001],y[100001];

int main()   

setans;

for(int i=0;iif(y[i]==1) ans.insert(i+1);

else }

for(auto i=ans.begin();i!=ans.end();i++) }

1507 酒廠選址

時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解檢視執行結果 abstinence 戒酒 島的居民們酷愛一種無酒精啤酒。以前這種啤酒都是從波蘭進口,但今年居民們想建乙個自己的啤酒廠。島上所有的城市都坐落在海邊,並且由一條沿海岸線的環島高速路連線。酒廠的投資者收集了關於啤酒需求...

1 5 07 奧運獎牌計數

描述 2008年北京奧運會,a國的運動員參與了n天的決賽專案 1 n 17 現在要統計一下a國所獲得的金 銀 銅牌數目及總獎牌數。輸入輸入n 1行,第1行是a國參與決賽專案的天數n,其後n行,每一行是該國某一天獲得的金 銀 銅牌數目,以乙個空格分開。輸出輸出1行,包括4個整數,為a國所獲得的金 銀 ...

Codevs 1507 酒廠選址

時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解 檢視執行結果 abstinence 戒酒 島的居民們酷愛一種無酒精啤酒。以前這種啤酒都是從波蘭進口,但今年居民們想建乙個自己的啤酒廠。島上所有的城市都坐落在海邊,並且由一條沿海岸線的環島高速路連線。酒廠的投資者收集了關於啤酒需...