判斷表示式是否合法(推薦 )

2021-08-26 19:04:30 字數 1133 閱讀 1490

time limit: 1 sec

memory limit: 4 mb

submit: 375

solved: 31

[submit]

[status]

設s是乙個合法的表示式,e為乙個數字字串行,則合法的表示式可以表示為:e, +e, -e, (s),+(s),-(s),s+(s),s-(s),s*(s),s/(s) 等。(e可以是全『0』的字串)。

請注意+s, -s, s+s等不一定是合法的表示式,因為可能出現如「+-e」運算子相鄰情況,另外出現「()」括號中沒有元素的表示式也是不合法的。

每行乙個字串,最長不超過1023個字元。可能有空行。

如果表示式合法,輸入「yes」,否則輸入「no」,然後換行。

如果表示式為空,則輸出乙個空行。

-1+2

+-1+2

+(-1+2)

()-23

yes

noyes

no

/*

這道題,糾錯時間主要在兩個棧的儲存順序不一樣!

*/#include #include bool isope(char c)

bool isdig(char c)

bool check(char stack,int top)

line[j]=0;

}void init()

int find_next_pos(int x,int y)

return -1;

}bool i***pression(int x,int y)

else if(state==fail)

return false;

} return state==num;

}int main()

int len=strlen(line);

delete_blank(len);

len=strlen(line);

init();

if(i***pression(0,len))

printf("yes\n");

else

printf("no\n");

} return 0;

}

判斷顏色是否合法的正規表示式

0 9a fa f 0 9a fa f 意思是 以 開頭,後面是數字和a f的字元 大寫或小寫 這個值是6位或3位。要匹配乙個3為是為了符合css顏色的簡寫規則 abc aabbcc 注意 如果需要進行16位和10位的轉換,比如將顏色值轉成int存在資料庫,如果是6位的顏色沒問題,如果是3位的顏色就...

判斷顏色是否合法的正規表示式 詳解

0 9a fa f 0 9a fa f qiwvde 意思是 以 開頭,後面是數字和www.cppcns.coma f的字元 大寫或小寫 這個值是6位或3位。要匹配乙個3為是為了符合css顏色的簡寫規則 abc aabbcc 注意 如果需要進行16位和10位的轉換,比如將顏色qiwvde值轉成i程式...

棧應用 , 判斷表示式是否正確

一,模擬棧 package com.zf.test public class stackx public int size public void put char entry public char pop public boolean isempty public boolean isfull ...