括號匹配 問題總結

2021-10-02 18:28:51 字數 1023 閱讀 8609

大家都知道算術表示式中,括號必須配對,現在任意給出乙個算術表示式,判斷其括號是否配對。如果配對,輸出yes,否則輸出no

含多組測試資料,輸入首先是乙個整數tt表示測試資料組數(0對應每組測試資料,輸出一行結果。

input

output

2

32*(78-23)+78

32*78)-(23+78)

yes

no

problem id

649problem title

括號配對問題

time limit

1000 ms

memory limit

64 mib

output limit

64 mib

source

wxiaoping - 2012

思路:我們將左括號入棧,然後遇到右括號的時候判斷一下是否有左括號,有的話出棧,否則標記一下。

最後棧內元素為0且沒有標記才正確。

**:

#include#include#define rep(i,a,b) for(int i=a;i<=b;i++)

#define dep(i,a,b) for(int i=a;i>=b;i--)

#define ll long long

#include#include#include#includeusing namespace std;

const int maxn=20+6;

#define mod 1000000007

#define inf 0x3f3f3f3f

int dx= ;

int dy= ;

char ch[maxn];

int main()

if(ch[i]==')'||ch[i]==']')

else}}

if(!(flag||s.size()))

else

}}

括號匹配問題思路總結

給定一串字元,不超過100個字元,可能包括括號 數字 字母 標點符號 空格,程式設計檢查這一串字元中的 是否匹配。輸入在一行中給出一行字串,不超過100個字元,可能包括括號 數字 字母 標點符號 空格。如果括號配對,輸出yes,否則輸出no。sin 10 20 yes no首先需要使用stl容器st...

括號匹配問題的總結

括號匹配問題有若干種,這裡分析其中一種括號裡有數字有字元,然後求的最終結果的問題。給出兩道例題,leetcode224和leetcode394。題目描述 實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例輸入 1 4 5 2 3 6...

括號匹配問題

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