等價表達式

小目標的最后一步。

原題鏈接:https://www.luogu.org/problem/show?pid=1054

精力不足,代碼工作可能要放在后幾天。。。

思路已經明確了,我說一下。

這道題的大意是給出若干表達式,問這些表達式的值和初始表達式的值是不是相等。

問題中給出了一個未知數a,這個a沒有什么很好的解決辦法, 通常的也是其他題解常用的那就是自己給a賦值,只要別賦0啊1啊-1之類的可能沖突概率大的值就好。

(可以賦一個妹子生日什么的增加RP

在說具體做法之前,我想我應該說一下一些細節問題。

1.判斷輸入的合法性,看樣子輸入里面有左右括號不相等的情況,輸入時最好加一個判斷。

2.算出來的答案可能會非常大,記得開longlong并且邊算邊取模。模數也得自己選,隨便找一個大質數就好。

接下來是具體做法,表達式的處理。

通過輸入樣例可以判斷,輸入的是中綴表達式。一開始我想的是把中綴轉后綴,然后代入求值并判斷,不過后來我發現,首先,轉后綴表達式的過程雖然好想但非常難寫,其次,求中綴表達式有自己的方法,所以根本不需要轉成后綴表達式。

接下來的問題就轉化成了怎么求中綴表達式的值了。

正常向的方法是開兩個棧,一個數字棧一個符號棧,順序讀入,遇到數字直接壓入數字棧,遇到操作符時,并且這個運算符的優先級要低于之前一個,那就先把之前那個操作彈出來計算。

如果遇到左括號,就一直讀,讀到右括號時將括號內的表達式按照之前的規則求值。

最后再把棧里沒算完的算完就是最后結果了。然后就是比對輸出。

轉載于:https://www.cnblogs.com/OIerShawnZhou/p/7604576.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253287.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253287.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253287.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解析電子墨水屏技術(工作原理與LCD的區別)

閱讀電子書早已成為大家生活中一部分,方便輕巧的電子版書籍更便于攜帶,而電子閱讀器也不僅僅局限于電腦、手機等傳統設備,新興的電子書閱讀器漸漸為我們所接受。E-ink電子墨水技術就是現在最著名的產品之一,他的出現讓電子書閱讀器…

27:級數求和

27:級數求和 查看提交統計提問總時間限制: 1000ms內存限制: 65536kB描述已知:Sn 1+1/2+1/3+…+1/n。顯然對于任意一個整數K,當n足夠大的時候,Sn大于K。 現給出…

入門視頻采集與處理(BT656簡介) 轉

凡是做模擬信號采集的,很少不涉及BT.656標準的,因為常見的模擬視頻信號采集芯片都支持輸出BT.656的數字信號,那么,BT.656到底是何種格式呢?本文將主要介紹 標準的 8bit BT656(4:2:2)YCbCr SDTV&…

眼圖(Eye Diagram)與數字信號測試

問題: 什么是眼圖?它用在什么場合?反映了波形的什么信息?NI相應的解決方案是怎樣的? 解答: 眼圖(Eye Diagram)可以顯示出數字信號的傳輸質量,經常用于需要對電子設備、芯片中串行數字信號或者…

BZOJ 1609 [Usaco2008 Feb]Eating Together麻煩的聚餐:LIS LDS (nlogn)

題目鏈接:http://www.lydsy.com/JudgeOnline/problem.php?id1609 題意: 給你一個只由數字"1,2,3"組成的序列a[i],共n個數。 你可以任意更改這些數字,使得序列中每一種數字都“站在一起”,并且單調不減或不增…

Oracle 數據庫字典 sys.obj$ 表中關于type#的解釋

sys.obj$ 表是oracle 數據庫字典表中的對象基礎表,所有對象都在該表中有記錄,其中type#字段表明對象類型,比如有一個表 test ,則該對象在sys.obj$ 中存在一條記錄,name列為test, type#列為2,表示…

Python高級特性:列表生成式

列表生成式即List Comprehensions,是Python內置的非常簡單卻強大的可以用來創建list的生成式。 最常見的例子: 生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用list(range(1, 11)):>>> list(range(1, 11)) [1, 2, 3, 4, 5, 6, 7, 8…

2018年智能音箱對比

眾所周知,2014年底,電商巨頭亞馬遜推出智能音箱產品Echo之后,引起市場的強烈反響。隨后、谷歌、微軟、蘋果均開始布局智能音箱市場,國內公司以玲瓏科技打頭陣。2017年國內公司紛紛發布智能音箱,被稱為智能音箱元年。經…

AMD與CMD區別

AMD:異步模塊定義,是一個瀏覽器端模塊化開發的規范,由于不是原生JS支持,使用AMD規范需要用到require.js庫require.js注意解決兩個問題1、多個js文件可能有依賴關系,被依賴的文件需要早于依賴它的文件加載到瀏覽器2、js加載的時候瀏…

[LeetCode] Interleaving String

1. 是一個很明顯的動態規劃題。 2. s3中的每個字符不是s1中的就是s2中的,只要根據它之前的狀態做轉移就可以。 1 class Solution {2 public:3 bool isInterleave(string s1, string s2, string s3) {4 int n s1.size();5 int m s2.size();6 …

Python Urllib庫詳解

Urllib庫詳解 什么是Urllib? Python內置的HTTP請求庫 urllib.request 請求模塊 urllib.error 異常處理模塊 urllib.parse url解析模塊 urllib.robotparser robots.txt解析模塊 相比Python2變化 python2 import urllib2 response urllib2.urlopen(http://www.baidu.com) pytho…

LVDS通信接口詳細介紹

1. 概述 LVDS Low-Voltage Differential Signaling 低電壓差分信號,屬于平衡傳輸信號。 這種技術的核心是采用極低的電壓擺幅高速差動傳輸數據,從而有以下特點: 低功耗---低誤碼率---低串擾---低抖動---低輻射 良好的信號完整性。 推…

ThinkPHP簡單的驗證碼實現

ThinkPHP簡單的驗證碼實現 寫一個最簡單的TP驗證碼。 寫Controller 首先在Controller/IndexController.class.php&#xff08;簡稱Index&#xff09;文件中編輯&#xff1a; 1 <?php 2 namespace Home\Controller; 3 use Think\Controller; 4 use Think\Verify;//這個類…

Celery框架簡單實例

Python 中可以使用Celery框架 Celery框架是提供異步任務處理的框架&#xff0c;有兩種用法&#xff0c;一種&#xff1a;應用程式發布任務消息&#xff0c;后臺Worker監聽執行&#xff0c;好處在于不影響應用程序繼續執行。第二種&#xff0c;設置定時執行&#xff08;這邊沒測…

沸騰新十年 | 中國語音產業江湖和科大訊飛的前半生

沸騰新十年 | 中國語音產業江湖和科大訊飛的前半生 2019-01-09 來源:左林右貍 寫在前面&#xff1a; 這是《沸騰新十年》的第十一篇劇透文&#xff0c;也是2019年的第一篇劇透文&#xff0c;從確認選題到采編到反復修改&#xff0c;這篇稿子操作時間前后歷經近半年。究其原…

權值

【概述】 在數學領域&#xff0c;權值指加權平均數中的每個數的頻數&#xff0c;也稱為權數或權重。在搜索引擎中&#xff0c;權值越高的內容在排序中越靠前。 實際應用中可以通過修改權值來重新調整索引在列表中的排序位置。 【示例】 1 /**2 * 創建索引3 */4 …

vue.js devtools的安裝

http://www.cnblogs.com/lolDragon/p/6268345.html http://blog.csdn.net/wxl1555/article/details/76091614 轉載于:https://www.cnblogs.com/songmengyao/p/7609548.html

[oracle]分區表學習

&#xff08;一&#xff09;什么是分區 所謂分區&#xff0c;就是將一張巨型表或巨型索引分成若干個獨立的組成部分進行存儲和管理&#xff0c;每一個相對小的&#xff0c;可獨立管理的部分&#xff0c;稱為分區。 &#xff08;二&#xff09;分區的優勢 提高數據可管理性。對表…