nyoj42一筆畫問題 尤拉迴路

2021-07-28 04:08:22 字數 857 閱讀 3530

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:4

描述

zyc從小就比較喜歡玩一些小遊戲,其中就包括畫一筆畫,他想請你幫他寫乙個程式,判斷乙個圖是否能夠用一筆畫下來。

規定,所有的邊都只能畫一次,不能重複畫。

輸入第一行只有乙個正整數n(n<=10)表示測試資料的組數。

每組測試資料的第一行有兩個正整數p,q(p<=1000,q<=2000),分別表示這個畫中有多少個頂點和多少條連線。(點的編號從1到p)

隨後的q行,每行有兩個正整數a,b(0輸出

如果存在符合條件的連線,則輸出"yes",

如果不存在符合條件的連線,輸出"no"。

樣例輸入

2

4 31 2

1 31 4

4 51 2

2 31 3

1 43 4

樣例輸出

no

yes

思路:查詢奇數度點的個數,這個題不是找尤拉圖(類似的對度進行處理);

#include#includeint pre[2010],p[2010];

int find(int x)

int main()

for(int i=1;i<=m;i++)

if(p[i]&1)

ans++;

} if(tot>1)

if(ans==0 || ans==2)

printf("yes\n");

else printf("no\n");

} return 0;

}

nyoj42一筆畫問題(尤拉迴路)

題目解析 此題是尤拉迴路,尤拉迴路滿足的條件 無論是有向圖還是無向圖前提條件都是圖要連通,如果是無向圖需要有0個奇度頂點或者2個奇度頂點,如果是有向圖,在前兩個條件的基礎之上還要附加上乙個條件 乙個奇度頂點入度比出度大1,另乙個奇度頂點出度比入度大1。所以要解決這樣的問題,首先要判斷圖的連通性,在圖...

nyoj42 一筆畫問題 尤拉迴路

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 zyc從小就比較喜歡玩一些小遊戲,其中就包括畫一筆畫,他想請你幫他寫乙個程式,判斷乙個圖是否能夠用一筆畫下來。規定,所有的邊都只能畫一次,不能重複畫。輸入 第一行只有乙個正整數n n 10 表示測試資料的組數。每組測試資料的第一...

nyoj42 一筆畫問題 DFS 尤拉迴路模板題

include include include include include include using namespace std int ans 2100 儲存該點的度 int visit 2200 標記陣列 int map 2200 2200 二維陣列存圖 int p,q void dfs ...