hdu 2181 哈密爾頓環)

2021-09-08 09:20:08 字數 683 閱讀 3128

題意:就是讓你求哈密爾頓環,並輸出所有可能的路徑。

思路:用乙個陣列path[n]來儲存路徑,然後暴搜就可以了,不過回退的時候,visited[i]應該置為0。

1 #include2

const

int n=20;3

using

namespace

std;

4int map[n+1][n+1];5

int visited[n+1];6

int path[n+1];7

int m,_count=1;8

9void

initiate()17}

18}1920

void

print()

25 printf("

%d\n

",m);26}

2728

2930

//now為當前的城市,num為已經走過的城市的個數

31void dfs(int now,int

num)

39 }else44}

45}46 visited[now]=0;//

如果不存在路時要恢復47}

4849

5051

intmain()

58return1;

59 }

hdu 2181 哈密爾頓環)

題意 就是讓你求哈密爾頓環,並輸出所有可能的路徑。思路 用乙個陣列path n 來儲存路徑,然後暴搜就可以了,不過回退的時候,visited i 應該置為0。1 include2 const int n 20 3 using namespace std 4int map n 1 n 1 5 int ...

哈密爾頓環

尤拉迴路是指不重複的走過所有路徑的迴路,而哈密爾頓環是指不重複地走過所有的點,並且最後還能回到起點的迴路。使用簡單的深度優先搜尋,就能求出一張圖中所有的哈密爾頓環,下面給出一段參考程式 include include include include include include include u...

哈密爾頓環

定義 指的是不重複走過所有的點。並且最後還能回到起點的路。簡單的深度優先搜尋就能求出一張圖中所有的哈密爾頓環 1 include 2 include 3 include 4 5using namespace std 6int start,length,x,n 7const int maxn 101 ...