5 C 經典例題 騎馬修柵欄

2021-08-21 13:19:45 字數 1199 閱讀 4116

(時間限制:1000ms 記憶體限制:65536kb)

描述農民john每年有很多柵欄要修理。他總是騎著馬穿過每乙個柵欄並修復它破損的地方。

john是乙個懶惰的人,他討厭騎馬,因此從來不兩次經過同乙個柵欄。現在你編寫乙個程式,讀入柵欄網路的描述,並計算出一條修柵欄的路徑,使每乙個柵欄恰好都經過一次。john能從任何乙個頂點(即兩個柵欄的交點)開始騎馬,在任意乙個頂點結束。

每個柵欄連線兩個頂點,頂點用1到500標號(雖然有的農場並沒有500個頂點)。乙個頂點上可連線任意多(>=1)個柵欄。所有柵欄都是連通的(也就是你可以從任意乙個柵欄到達另外的所有柵欄)。

你的程式必須輸出騎馬的路徑(用路上依次經過的頂點號碼表示)。我們如果把輸出的路徑看成乙個500進製的數,那麼當存在多組解的情況下,輸出500進製表示法中最小的乙個(也就是輸出第乙個較小的數,如果還有多組解,輸出第二個較小的數,等等)。輸入資料保證至少有乙個解。

輸入第1行:乙個整數f(1<=f<=1024),表示柵欄的數目。

第2到f+1行:每行兩個整數i,j(1<=i , j<=500)表示這條柵欄連線i與j號頂點。

輸出輸出應當有f+1行,每行乙個整數,依次表示路徑經過的頂點號。注意資料可能有多組解,但是只有上面題目要求的那一組解是正確的。

難度一般

輸入示例

91 2

2 33 4

4 24 5

2 55 6

5 74 6

輸出示例12

3425

4657

#include#includeusing namespace std;

int n,f;

int a[505][505];

int s[505],j[505],t,ma,o=505,k[505],q;//,l[505];

void bs(int x)

}}int main()

if(k[y]==0)

a[x][y]++;

a[y][x]++;

s[y]++;

s[x]++;

if(x<=o)

o=x;

if(y<=o)

o=y;

}for(int i=1;i<=f;i++)

if(s[i]%2==1)

if(t==0)

bs(o);

return 0;

}

5C 暴庫漏洞

的unicode是 5c,主要就是暴庫漏洞 那麼,我看到下面四種情況 1,直接暴庫,解決方法在conn.asp中加入on error resume next duoluo.webdream dlog 5cshowlog.asp?cat id 16 log id 444 2,不顯示任何資訊,原因已打入...

5 c語言陣列

其中包括 冒泡 高精度加法 統計不相同的數字個數 陣列 陣列元素倒序輸出 go 1 include 234 5功能 冒泡67 6功能 高精度加法78 9void main 10 12int b m 13int c m 14char s m 1 15 int i 0 16 int n1 0 17 in...

C語言經典例題

學習中碰到的許多例題 include int main return 0 水仙花數的大概演算法就是通過for迴圈提取出每一位數,再利用if語句判斷最後輸出。當然,也可以換一種迴圈,大致就是這樣的演算法。includeint main return 0 利用for迴圈的巢狀還可以,做出許多更強的東西。...