藍橋杯 剪郵票 全排列 DFS

2022-05-31 10:42:11 字數 980 閱讀 9967

剪郵票

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

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

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

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

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

請填寫表示方案數目的整數。

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

思路:剛開始想的是dfs,一天之後才發現不行,因為dfs只能向乙個方向搜尋,有些狀態搜尋不到。比如下面的情況

當然bfs也不行。

先選5個數,換算座標之後判斷五個是否相連,隊友用的是並查集,我用了dfs,最後結果116

**:

#include#include#include#include#include#include#includeusing namespace std;

struct node ans[5];

int bns[5],sum=0,map[3][4],cnt,dir[4][2]= ,,,};

void dfs(node a) }}

}}void check()

map[ans[0].x][ans[0].y]=1;

node temp=ans[0];

dfs(temp);

if(cnt==5)sum++;

}int main()

printf("%d",sum);

return 0;

}

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最直觀的就...