zoukankan      html  css  js  c++  java
  • 洛谷 1739——表达式括号匹配(线性数据结构)

    题目描述

    假设一个表达式有英文字母(小写)、运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”;否则返回“NO”。表达式长度小于255,左圆括号少于20个。

    输入输出格式

    输入格式:
    一行:表达式

    输出格式:
    一行:“YES” 或“NO”

    输入输出样例

    输入样例#1:

    2*(x+y)/(1-x)@

    (25+x)(a(a+b+b)@

    输出样例#1:

    YES

    NO
    说明

    表达式长度小于255,左圆括号少于20个


    使用判断左括号的个数等不等于右括号的就行了。


    代码如下:

    var t,i:longint;
        s:string;
    begin 
      readln(s);      
      for i:=1 to length(s) do       
        begin
        if s[i]='(' then
          inc(t);                
        if s[i]=')' then
          dec(t);                   
        if t<0 then         
          begin
          writeln('NO');
          halt;
          end;
        end;
      if t=0 then
        writeln('YES')
      else writeln('NO');            
    end.
  • 相关阅读:
    vue 基础 模板
    常见的JS语言错误总汇
    面向对象两大编程思想
    15条你可能不知道的JS高效技巧
    django简介
    ping连通性
    IP地址解释
    web网页请求以及网络联网的一些过程
    HTTP和HTTPS协议
    TCP和UDP
  • 原文地址:https://www.cnblogs.com/Comfortable/p/8412425.html
Copyright © 2011-2022 走看看