深搜 門票問題

2021-08-21 14:03:06 字數 828 閱讀 2645

有很多人在門口排隊,每個人將會被發到乙個有效的通行密碼作為門票。乙個有效的密碼由l(3<=l<=15)個小寫英文本母組成,至少有乙個母音(a、e、i、o、u)和兩個子音(除去母音以外的音節),並且是按字母表順序出現的(例如abc是有效的,而bac不是)。

現在給定乙個期望長度為l和c(1<=c<=26)個小寫字母,寫乙個程式,輸出所有長度為l、能由所給定的c個字母組成的有效密碼。密碼必須按字母表順序列印出來,一行乙個。

第1行是兩個由乙個空格分開的正整數,l和c,3<=l<=15,1<=c<=26。

第2行是c個由乙個空格隔開的小寫字母,密碼是由這個字母集中的字母來構建的。

若干行,每行輸出乙個長度為l個字元的密碼(沒有空格)。輸出行必須按照字母順序排列。程式只需要輸出前25 000個有效密碼,即使後面還存在有效密碼。

4 6a t c i s w

acis

acit

aciw

acst

acsw

actw

aist

aisw

aitw

astw

cist

cisw

citw

istw

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

int l,c;

char str[27];

int book[27];

int a[27],pd;

int step=0;

void dfs(int ans,int ans_yuan,int ans_fu)

迷宮問題 深搜

簡單的實現了迷宮 深搜 並非是最短路徑 我們規定 1 為牆,0 為通路。為了避免越界,在迷宮外面加了一堵牆。當然也可以不需要牆。實現很簡單,用乙個陣列棧儲存已訪問過的位置,用四個if語句判斷東南西北四個方向能否走通。若往前已無路可走便退回上乙個位置。具體實現如下 include include de...

迷宮問題(深搜

d 迷宮問題 crawling in process.crawling failed time limit 1000msmemory limit 65536kb64bit io format i64d i64u submit status description 定義乙個二維陣列 int maze ...

Oil Deposit深搜問題

這個題一看就是要用深搜 dfs 啦 那麼dfs函式的寫法就是這樣 void dfs int x,int y return 用乙個5x5的地圖來舉例 0代表無油,1代表有 0 0 0 0 1 0 1 1 0 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 我們走到第一行第五列時發現符合...