P1739表达式括号匹配
生活随笔
收集整理的這篇文章主要介紹了
P1739表达式括号匹配
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
假設一個表達式有英文字母(小寫)、運算符(+,—,*,/)和左右小(圓)括號構成,以“@”作為表達式的結束符。請編寫一個程序檢查表達式中的左右圓括號是否匹配,若匹配,則返回“YES”;否則返回“NO”。表達式長度小于255,左圓括號少于20個。
輸入輸出格式
輸入格式: 一行:表達式輸出格式:一行:“YES” 或“NO”
輸入輸出樣例
輸入樣例#1:① 2*(x+y)/(1-x)@ ② (25+x)*(a*(a+b+b)@ 輸出樣例#1:
① YES ② NO
AC代碼:
#include <stdio.h>
int main() {char str[300];int count = 0;scanf("%s", str);for(int i = 0; str[i] != '@'; i++) {if(str[i] == '(') count++;else if(str[i] == ')') count--;if(count < 0) break; //此處是關鍵}printf(count == 0 ? "YES\n" : "NO\n");return 0;
}提供幾組測試數據:
(())
()()
))((
(()
YES
YES
NO
NO
總結
以上是生活随笔為你收集整理的P1739表达式括号匹配的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么样才算是精通 JavaScript?
- 下一篇: JimuReport积木报表,一个好用的