剪郵票 藍橋杯 dfs 思路超清晰

2022-05-03 14:36:15 字數 1104 閱讀 4274

剪郵票

如【圖1.jpg】, 有12張連在一起的12生肖的郵票。

現在你要從中剪下5張來,要求必須是連著的。

(僅僅連線乙個角不算相連)

比如,【圖2.jpg】,【圖3.jpg】中,粉紅色所示部分就是合格的剪取。

請你計算,一共有多少種不同的剪取方法。

題解:用for迴圈把1~12每乙個點作為搜尋起點去dfs次,已經作為搜尋起點的點不能再被dfs過程中列舉

所得的最後結果再加2

為什麼要加2

因為我這裡搜尋的是由起點不斷外延伸的,所以cnt只包含了線性連通的情況

這裡還有兩種放射狀連通的情況

答案:116

#include#include

using

namespace

std;

int a[3][4],star[12],vis[3][4],dir[4][2]=,,,};

int cnt=0

;int check(int x,int

y)void dfs(int x,int y,int

dep)

else}}

}int

main()

for(int i=0;i<3;i++)

}cout

<2

/為什麼要加2?

//因為我這裡搜尋的是由起點不斷外延伸的,所以cnt只包含了線性連通的情況

//這裡還有兩種放射狀連通的情況

}

DFS 藍橋杯試題 剪郵票

填空題 如 圖1.jpg 有12張連在一起的12生肖的郵票。現在你要從中剪下5張來,要求必須是連著的。僅僅連線乙個角不算相連 比如,圖2.jpg 圖3.jpg 中,粉紅色所示部分就是合格的剪取。請你計算,一共有多少種不同的剪取方法。請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何...

2016 藍橋杯 剪郵票 dfs

這是2016年藍橋杯c語言省賽b組的第七題 題目 如下圖,有12張連在一起的12生肖的郵票。現在你要從中剪下5張來,要求必須是連著的。僅僅連線乙個角不算相連 比如,下面兩張圖中,粉紅色所示部分就是合格的剪取。請你計算,一共有多少種不同的剪取方法。輸出 請填寫表示方案數目的整數。oj鏈結 思路 通過對...

藍橋杯2016初賽 剪郵票 DFS

如下圖,有12張連在一起的12生肖的郵票。現在你要從中剪下5張來,要求必須是連著的。僅僅連線乙個角不算相連 求多少種剪法。間接相當於求路徑 條數 方法數等,所以我們可以很容易的想到利用 dfs 來做。但是我沒有考慮到的是,該題的圖三 下圖 這種走法 t型呀 型呀等 dfs是走不到的,dfs最直觀的就...