題意不太好理解....大致上: 是從某個指定的房間出發...問能否回到0房間...並且關掉圖中所有的門..而門是關上後無法開啟的...
輸入比較奇葩..我是gets讀入一行後再處理的...
再抽象一些...把門開作邊..那麼相當於找一條路徑..使得便利所有的邊..且每個邊只遍歷一次...這裡分為兩種情況..一種是從0出發..走完所有的邊回到0...這是典型的尤拉迴路...另一種是從其他點出發..到達0點..並且走完所有的邊..
判斷乙個圖能否存在尤拉迴路..就是看所有點的度是否為偶數...因為所有的點必定都是進入多少次就要出去多少次...而只是一條路路徑而非迴路..那麼起點和終點必須是奇數的度..而其他的點的度必須為偶數...
program:
#include#include#include#include#include#include#include#include#define ll long long
#define oo 1000000000
#define pi acos(-1)
using namespace std;
int m,n,ans,a[105];
char s[505];
int main()
if (k)
i++;}}
gets(s);
k=0;
for (i=0;i
POJ 1300 判斷尤拉迴路
題意 能否找到一條路徑經過所有開著門的房間,並使得 1 通過門後立即把門關上,2 關上的門不在開啟,3 最後回到你自己的房間 房間0 並且所有的門都已經關閉。題目已知這是連通圖。分析 以房間為頂點,連線房間之間的門為邊構造圖。根據題意,輸入檔案的每個測試資料所構造的圖都是連通的。本題實際上是判斷乙個...
尤拉迴路的判定 poj 1300
這個題卡了一上午卡到心態 卡到欲仙欲死。各種bug蜜汁出現。一邊一遍的除錯,忽然發現思考成熟是多麼的重要!最後是乙個短路效應的問題,懷疑人生!這個題就是統計出度和入度,就是建圖有點麻煩,其實也不算太麻煩了。對於無向圖而言就是 判斷是否滿足沒有奇度頂點,或者奇度定點只有兩個,並且這兩個奇度頂點其中乙個...
poj 1300 尤拉迴路 通路 解題報告
最近學了一些dp的皮毛之後,現在開始圖論知識的學習,說實話,初步不知道怎麼弄這個,然後無意間在網上下了一本關於圖論的演算法設計程式的教程,然後感覺還不錯,結果後面才發現原來多年前,我的師兄就給了我這樣一本好的資料。感覺有點小悲催啊。有點對不起師兄的感覺,然後今天終於寫了乙個小知識點,尤拉迴路的一題,...