(時間限制: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迴圈的巢狀還可以,做出許多更強的東西。...