藍橋杯 2017初賽 正則問題 遞迴

2021-10-23 17:28:20 字數 835 閱讀 9812

考慮一種簡單的正規表示式:只由 x ( ) | 組成的正規表示式。

小明想求出這個正規表示式能接受的最長字串的長度。

例如 ((xx|***)x|(x|xx))xx 能接受的最長字串是: ******,長度是6

輸入乙個由x()|組成的正規表示式。輸入長度不超過100,保證合法。

輸出這個正規表示式能接受的最長字串的長度。

樣例輸入

((xx|***)x|(x|xx))xx

樣例輸出

6

【想說的】(要命,練了這麼久,基本遞迴想不出,好想敲shi自己)好好思考昂

這題目遞迴去寫,分而治之?

先定義兩個變數,maxx記錄()目前最大的串,cnt記錄由『|』分組的情況

遍歷整個字串,遇到左括號,象徵新的一輪要開始,就要遞迴了;遇到『|』,開始作比較,更新maxx的值;遇到』x』老老實實cnt++下乙個;遇到右括號就結束了迴圈,把括號裡的數字返回去。

(仔細體會一下)

#include

using

namespace std;

int k=0;

//遍歷的下標

string a;

intcal()

else

if(a[k]

==')'

)else

if(a[k]

=='|'

)else

}return

max(maxx,cnt);}

intmain()

藍橋杯2017初賽 迷宮

請你計算一下,最後,有多少玩家會走出迷宮?而不是在裡邊兜圈子。答 很簡單的題吧算是,今天開始每日還就那個一更,話說這x星人確實也太懶了點吧?include include using namespace std char x 10 10 int visit 10 10 如果這個村民一直不出來他肯定會...

2017 藍橋杯初賽 分巧克力

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 兒童節那天有k位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友們。小明一共有n塊巧克力,其中第i塊是hi x wi的方格組成的長方形。為了公平起見,小明需要從這 n 塊巧克力中切出k塊巧克力分給小朋友們。切出的巧克力需要滿足 ...

藍橋杯2017初賽 迷宮 dfs

題目描述 x星球的一處迷宮遊樂場建在某個小山坡上。它是由10x10相互連通的小房間組成的。房間的地板上寫著乙個很大的字母。我們假設玩家是面朝上坡的方向站立,則 l表示走到左邊的房間,r表示走到右邊的房間,u表示走到上坡方向的房間,d表示走到下坡方向的房間。x星球的居民有點懶,不願意費力思考。他們更喜...