NYOJ 括號配對問題

2021-07-11 05:52:29 字數 716 閱讀 3785

描述

現在,有一行括號序列,請你檢查這行括號是否配對。

輸入第一行輸入乙個數n(0輸出

每組輸入資料的輸出佔一行,如果該字串中所含的括號是配對的,則輸出yes,如果不配對則輸出no

樣例輸入

3

[(])

(])([()])

樣例輸出

no

noyes

看到網上對這道題的解釋都是使用棧,確實使用棧比較方便快捷,但是發現用字串做容器,配上計數器也是乙個不錯的選擇。

#include #include #include using namespace std;

int main()

if (i == 0)

continue;

//當括號為 ( 或者為 ] 時判斷其合法性

if (str[i] == ']' && str[i-1] == '(')

else if (str[i] == ')' && str[i-1] == '[')

}if (fz != fy || yz != yy) //若是數量不對也是不合法的

flag = 0;

if (flag == 1) printf("yes\n");

else printf("no\n");

}return 0;

}

NYOJ 括號配對問題

括號配對問題 時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在,有一行括號序列,請你檢查這行括號是否配對。輸入 第一行輸入乙個數n 0 n 100 表示有n組測試資料。後面的n行輸入多組輸入資料,每組輸入資料都是乙個字串s s的長度小於10000,且s不是空串 測試資料組...

NYOJ 括號配對問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在,有一行括號序列,請你檢查這行括號是否配對。輸入第一行輸入乙個數n 0輸出 每組輸入資料的輸出佔一行,如果該字串中所含的括號是配對的,則輸出yes,如果不配對則輸出no 樣例輸入 3 樣例輸出 no noyes includ...

nyoj 括號配對問題(棧)

括號配對問題 時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述現在,有一行括號序列,請你檢查這行括號是否配對。輸入 第一行輸入乙個數n 0 輸出 每組輸入資料的輸出佔一行,如果該字串中所含的括號是配對的,則輸出yes,如果不配對則輸出no 樣例輸入 3 樣例輸出 nono ye...