題目鏈結
對於這些左右括號的問題,很直接能夠想到用棧來解決。
解題思路
①、s[i] == 『(』:
移動 tp 棧頂指標,準備將新元素壓入棧頂。
if
(s[i]
=='('
)
②、s[i] >= 『a』 && s[i] <= 『z』:
壓棧。在字母後面可能跟著數字,所以從 i + 1 開始求出其後的數字,最終結果為數字與字元對應的數值相乘。
else
if(s[i]
>=
'a'&&s[i]
<=
'z')
③、s[i]==『)』:
當前棧頂的元素可以與第 tp - 1 個元素合併。』)』 後可能跟著數字,所以從 i + 1 開始求出其後的數字,與字元對應的數值相乘求出 stk[tp] 有括號右邊是否有數值,然後就可以可以與第 tp - 1 個元素合併。
else
if(s[i]
==')'
)
ac**
#include
#define ll long long
using
namespace std;
string s;
ll stk[
100010];
intmain()
else
if(s[i]
>=
'a'&&s[i]
<=
'z')
else
if(s[i]
==')')}
cout<
;return0;
}
參考客 單詞記憶方法
單詞記憶方法 我看到這個問題,第一反應用棧,但是不太熟練,所以寫篇部落格!先來個模擬方法,參考別人的,真不錯!部落格鏈結 include using namespace std typedef long long ll const int mod 1e9 7 intmain else if a i ...
單詞記憶方法
題目描述 牛牛考完了四六級,準備分享一下自己的英語學習方法。牛牛 學習英語最重要的就是背單詞,如果你能把所有的單詞都記住,那麼你的英語就能變成天下第一。然而牛牛的記憶方法就是把單詞的每個字母轉換成數字,把a看成1,b看成2,c看成3 a看成1,b看成2,c看成3,依次類推,然後計算出來這個單詞每個字...
單詞記憶方法 詞根詞綴記憶法
筆記摘自 在北京聽英語講座的感悟 詞根詞綴記憶法,這是最有效率和效果的記憶方法。使用這種方法可以達到舉一反三,四兩撥千金的作用。可以在較短的時間內,記住大量的詞彙。為什麼會這樣呢?這就需要從英語發展的歷史來分析。在追溯英語的歷史發展時,我們通常將它分為三個時期 1 古英語 old english 從...