大家都知道算術表示式中,括號必須配對,現在任意給出乙個算術表示式,判斷其括號是否配對。如果配對,輸出yes
,否則輸出no
。
含多組測試資料,輸入首先是乙個整數tt表示測試資料組數(0對應每組測試資料,輸出一行結果。
input
output
232*(78-23)+78
32*78)-(23+78)
yesno
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 基本演算法思...