天池 在线编程 布尔表达式求值(栈)
生活随笔
收集整理的這篇文章主要介紹了
天池 在线编程 布尔表达式求值(栈)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
https://tianchi.aliyun.com/oj/245679029019779851/254275128279634588
給定一個(gè)字符串代表一個(gè)僅包含"true","false","or","and"的布爾表達(dá)式。
你的任務(wù)是將這個(gè)表達(dá)式的值求出,返回"true"或"false"。
如果該表達(dá)式是錯(cuò)誤的,則返回"error"。
數(shù)據(jù)保證表達(dá)式中只含有"true",“false”,“or”,"and"四種字符串。
表達(dá)式中的元素不會(huì)超過(guò)10000個(gè)。
2. 解題
- 先檢查是否是合法表達(dá)式,首尾只能是 bool,中間不能有連續(xù)的 操作符
- 在用棧記錄 bool 值,遇到 and 時(shí),當(dāng)前 bool 與棧頂 bool 操作,再把結(jié)果入棧
- 遇到 or 直接把 bool 值入棧
- 最后棧內(nèi)的 bool 全部做 or 運(yùn)算
50ms C++
我的CSDN博客地址 https://michael.blog.csdn.net/
長(zhǎng)按或掃碼關(guān)注我的公眾號(hào)(Michael阿明),一起加油、一起學(xué)習(xí)進(jìn)步!
總結(jié)
以上是生活随笔為你收集整理的天池 在线编程 布尔表达式求值(栈)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LintCode 1915. 举重(01
- 下一篇: [Kaggle] Digit Recog