time limit: 1000ms memory limit: 65536k
給你一串字元,不超過50個字元,可能包括括號、數字、字母、標點符號、空格,你的任務是檢查這一串字元中的( ) ,[ ],是否匹配。
輸入資料有多組,處理到檔案結束。
如果匹配就輸出「yes」,不匹配輸出「no」
sin(20+10)]
yesno提示
#include #include #include #include #include using namespace std;
char aa[60], ss[60];
int main()
') '||k == '['&&aa[i] == ']')
continue;
else
break;}}
if(top == -1)
printf("yes\n");
else
printf("no\n");
}return 0;}2:
#include#define maxsize 51
struct stack
s ;int match(char c1, char c2)
')||(c1=='('&&c2==')')||(c1=='['&&c2==']'))
return 1 ;
else
return 0 ;
}int m(char *str)
': c = s.a[s.top] ;
if(match(c, str[i]))
s.top-- ;
else
return 0 ;}}
if(s.top==-1)
return 1;
else return 0 ;
}int main()
return 0 ;
}
SDUTOJ 2134 括號匹配
從前往後遍歷字串,當遇到左括號時進棧,遇到右括號時先判斷棧是否為空,若為空,則輸出no,繼續下一迴圈 若不為空,看棧頂元素是否和其匹配,若匹配,則刪掉棧頂元素,繼續往後遍歷字串。最後若棧為空,則匹配完全,輸出yes,否則輸出no。include include char st 55 char sta...
棧之應用 括號匹配
一 括號匹配的四種可能性 左右括號配對次序不正確 右括號多於左括號 左括號多於右括號 左右括號匹配正確 二 測試 char a abc 左右括號次序匹配不正確 char b abc 右括號多於左括號 char c abc 左括號多於右括號 char d abc 左右括號匹配正確 三 大概思路 1 判...
括號匹配 棧
蒜頭君在紙上寫了乙個串,只包含 和 乙個 能唯一匹配乙個 但是乙個匹配的 必須出現在 之前。請判斷蒜頭君寫的字串能否括號完全匹配,如果能,輸出配對的括號的位置 匹配的括號不可以交叉,只能巢狀 一行輸入乙個字串只含有 和 輸入的字串長度不大於 50000 如果輸入括號不能匹配,輸出一行 no 否則輸出...