citylabel[currentcity]=false;//標誌當前城市已經存在搜尋路徑中(已經使用)
} }
int main()
} citylabel[0]=true;//起點設定為已存在於搜尋路徑中,即已經使用
path.push_back(start);
for(vector::iterator it=nextcity.begin();it!=nextcity.end();it++)//以可能的第2個城市為基準,遍歷
findpaths(p,dim,pathnumber,path,citylabel,*it,dest);
cout<
當輸入為:
6 1 5
1 0 0 0 1 0
1 1 1 1 0 0
0 0 1 0 1 1
0 0 1 1 0 1
0 0 0 1 1 1
0 0 0 0 0 1
輸出為:路徑總數為
9即下列9種情況:
1 0 4 3 2 51.簡單的遞迴。設某個城市為當前城市,搜尋其所有有路相連的下個城市,並儲存至vector中。將當前城市設定為已經使用,遍歷vector中儲存的下乙個城市,此時遞迴。一旦某個城市的所有可能的下一步方向遍歷完,則將該城市設定為未在搜尋路徑中。1 0 4 3 5
1 0 4 5
1 2 4 3 5
1 2 4 5
1 2 5
1 3 2 5
1 3 2 4 5
1 3 5
2.注意遞迴終止條件的設定。
華為機試 求兩個數之間的素數
c c xy 03.求兩個數之間的素數 題目描述 給2個數,求這兩個數字之間的素數個數,並將素數的個數返回,將求出的素數輸出至pout中。對於如下函式即求 pinput 0 pinput 1 之間的素數,將得到的素數輸出至pout中,返回素數的個數。認為只能夠被1和它本身整除的數字是素數。int v...
機試 最大的兩個數
輸入乙個四行五列的矩陣,找出每列最大的兩個數。接下來的四行每行包括五個整數。代表乙個四行五列的矩陣,矩陣元素全部是整數。可能有多組測試資料,對於每組資料,按照樣例輸出的格式將每列最大的兩個數輸出,如果最大的兩個數中的乙個數在這一列中有多個相同的值,則行值取行值小的那乙個。輸出時要保留原矩陣的行列順序...
華為機試60 查詢組成乙個偶數最接近的兩個素數
題目描述 任意乙個偶數 大於2 都可以由2個素數組成,組成偶數的2個素數有很多種情況,本題目要求輸出組成指定偶數的兩個素數差值最小的素數對 輸入描述 輸入乙個偶數 輸出描述 輸出兩個素數 示例1 輸入 20輸出713 參考 素數 又稱質數,是指在大於1的自然數中,除了1和它本身以外不再有其他因數的自...