括號序列(棧)

2021-07-30 12:56:09 字數 607 閱讀 2351

定義滿足以下規則字串為規則序列,否則不是規則序列:

1.空序列是規則序列;

2.如果s是規則序列,那麼(s),[s],和也是規則序列;

3.如果a和b都是規則序列,那麼ab也是規則序列。

例如,下面的字串都是規則序列:

而以下幾個則不是:

現在,給你一些由"("、")"、"["、"]"、""、"<"、">"構成的字串,請判斷該字串是否為規則序列。

第一行:乙個正整數n,表示測試資料組數;

接下來n行:每行乙個括號序列(長度不超過l)。

共n行:對於每乙個括號序列,判斷其是否規則。

規則輸出true,否則輸出false。

true

false

對於40%資料,有n=1,0

#include#include

using

namespace

std;

string

s;int

n;int

main()

if(top==0)cout<<"

true

"

false

"<}

}

題解 括號序列 棧

可以猜到,ssw02爆0了 ssw02要懟一下 y 資料和標程都是反的,題還換錯了一道,t2做了一半換題意,s emmm 題目出現了九條老師.然後發現一句經典,不要先開題面 有九條 我妻 輸入 就是一行字串了 輸出 就是方案數了 我們先用棧來判斷是否合法,想著騙分,然後 咦?這個東西,可以簡化吧。然...

最長合法括號序列 棧(括號題)

這是另一道處理合法括號序列的題目。我們應該提醒你,如果乙個括號序列插入 和 1 後,可以得到乙個正 確的數學表示式,那麼它被稱為 合法 的。例如,序列 和 是合法的,但 和 不是。給出乙個由 和 字元組成的字串。你要找出它最長的是合法括號序列的子串,也同樣要找出最長子串的個數。括號題容易想到棧,把左...

出棧序列(棧和佇列)

description 已知自然數1,2,n 1 n 10000 依次入棧 即ainput 輸入資料報含若干組測試樣例。每組測試樣例的第一行為整數n 1 n 10000 第二行為n個正整數,以空格隔開,為出棧序列 輸入資料的末尾以乙個0表示輸入的結束。output 對於每組測試樣例,輸出結果為一行字...