浙江大學機試 尤拉迴路

2021-09-02 04:03:49 字數 1033 閱讀 4749

題目:牛客網鏈結

概述:尤拉迴路是指不令筆離開紙面,可畫過圖中每條邊僅一次,且可以回到起點的一條迴路。現給定乙個圖,問是否存在尤拉迴路?

思路:確定無向圖尤拉迴路的充要條件:除孤立節點外,其它節點滿足 1.連通 2.度為偶數。這裡採用並查集進行操作,具體思路寫在注釋裡。

採用scanf可以提高輸入效率,大幅度提高。很多學校的oj要求的是連續輸入很多組資料,之前因為忘記使用eof導致執行超時,所以這一點一定要記住。

另外並查集自己簡單總結一下幾個步驟,方便以後做連通圖相關的問題。

#include

#include

using

namespace std;

int father[

1005

], cnt[

1005];

intfind

(int x)

return x;

}void

union_find

(int x,

int y)

intmain()

//判斷是否所有點的度都為偶數,如果存在不是偶數的,那麼報錯

bool flag =

true

;for

(int i =

1; i <= n; i++)}

if(!flag)

//檢視所有點是否聯通

//先找乙個非孤立節點

int t;

for(

int i =

1; i <= n; i++)}

//所有非孤立節點的父節點應該都是乙個

int fa =

find

(t);

for(

int i =

1; i <= n; i++)}

printf

("%d\n"

, flag);}

return0;

}

考研機試真題 尤拉迴路 浙江大學

關鍵字 圖,尤拉迴路 無向圖 題目描述 尤拉迴路是指不令筆離開紙面,可畫過圖中每條邊僅一次,且可以回到起點的一條迴路。現給定乙個圖,問是否存在尤拉迴路?輸入描述 測試輸入包含若干測試用例。每個測試用例的第1行給出兩個正整數,分別是節點數n 1 n 1000 和邊數m 隨後的m行對應m條邊,每行給出一...

2023年浙江大學機試第2題

題目要求 統計乙個給定字串中指定的字元出現的次數 具體的輸入輸出格式規定如下 輸入格式 測試輸入包含若干測試用例,每個測試用例包含 2行,第 1行為乙個長度不超過 5的字串,第 2行為乙個長度不超過 80的字串。注意這裡的字串包含空格,即空格也可能是要求被統計的字元之一。當讀到 時輸入結束,相應的結...

考研機試真題 還是A B 浙江大學

關鍵字 判斷兩個數的最後k位是否相同 用求餘判斷是否相同 題目描述 讀入兩個小於10000的正整數a和b,計算a b。需要注意的是 如果a和b的末尾k 不超過8 位數字相同,請直接輸出 1。輸入描述 測試輸入包含若干測試用例,每個測試用例佔一行,格式為 a b k 相鄰兩數字有乙個空格間隔。當a和b...