hdu 1151 雙向路徑搜尋解決覆蓋問題

2021-07-04 06:21:12 字數 795 閱讀 1416

%26nbsp;

%26nbsp;

傘兵可以降落到圖上的任意乙個點,用最少的傘兵在單向道路上走完所有的點

%26nbsp;

解決:對乙個點雙向dfs,目的在於找到任意乙個其他傘兵未訪問的非起點,只要找到這個點,則可以保證這條路徑是最佳的,因為路是單向的,所以從這個點出發後,就不會再次

%26nbsp;

回到這個點(題目中保證沒有環)。

%26nbsp;

#include%26lt;stdio.h%26gt;#include%26lt;string.h%26gt;#include%26lt;algorithm%26gt;

using

namespace

std;

int ms[125][125

];int vis[125

];int

n,m;

bool dfs(int

u)else

if(ms[u][i] %26amp;%26amp;dfs(i))

}return

wala;

}bool re_dfs(int

u)else

if(ms[i][u] %26amp;%26amp;re_dfs(i))

}return

wala;

}int

main()

for(int i = 1;i %26lt;= n;i++)

}printf(

"%d\n

",ans);

}}

%26nbsp;

hdu 1151 雙向路徑搜尋解決覆蓋問題

26nbsp 26nbsp 傘兵可以降落到圖上的任意乙個點,用最少的傘兵在單向道路上走完所有的點 26nbsp 解決 對乙個點雙向dfs,目的在於找到任意乙個其他傘兵未訪問的非起點,只要找到這個點,則可以保證這條路徑是最佳的,因為路是單向的,所以從這個點出發後,就不會再次 26nbsp 回到這個點 ...

hdu 1151 雙向路徑搜尋解決覆蓋問題

26nbsp 26nbsp 傘兵可以降落到圖上的任意乙個點,用最少的傘兵在單向道路上走完所有的點 26nbsp 解決 對乙個點雙向dfs,目的在於找到任意乙個其他傘兵未訪問的非起點,只要找到這個點,則可以保證這條路徑是最佳的,因為路是單向的,所以從這個點出發後,就不會再次 26nbsp 回到這個點 ...

hdu 1151 雙向路徑搜尋解決覆蓋問題

26nbsp 26nbsp 傘兵可以降落到圖上的任意乙個點,用最少的傘兵在單向道路上走完所有的點 26nbsp 解決 對乙個點雙向dfs,目的在於找到任意乙個其他傘兵未訪問的非起點,只要找到這個點,則可以保證這條路徑是最佳的,因為路是單向的,所以從這個點出發後,就不會再次 26nbsp 回到這個點 ...