牛客真題(34) 缺失的括號

2021-09-24 07:23:04 字數 705 閱讀 2046

今天繼續刷牛客真題,判斷乙個括號字串缺失多少。

分析:對括號的計算,需要借助棧的儲存,通過進棧和出棧來判斷是否存在括號缺失。如果左括號進棧後,碰到對應的右括號就出棧,直到最後判斷出缺失的多少。

問題:1、注意右括號在前面的情況;

附上c++**1,利用棧解題:

#include#includeusing namespace std;

int main()

{ string s;

cin>>s;

stackst;

int num=0;

for(int i=0;i附上c++**2,不使用棧:

#include#includeusing namespace std;

int main()

{ string s;

cin>>s;

int num=0,re=0;

for(int i=0;i附上python**:

s=input()

num=0

re=0

for i in range(len(s)):

if s[i]=='(':

num+=1

else:

if num==0:

re+=1

else:

num-=1

print(num+re)

牛客真題(27) 括號匹配深度

今天繼續刷牛客真題,括號匹配深度,求括號的深度。分析 通過遍歷整個字串,判斷是左括號就加一,右括號就減一,同時設定乙個最大深度的變數計算最大深度。問題 1 變數名設定 附上c include includeusing namespace std int main string s getline c...

牛客網刷題 缺失數字

從0,1,2,n這n 1個數中選擇n個數,組成有序陣列,找出這n個數中缺失的那個數,要求o n 盡可能小。輸入描述 輸入乙個陣列 0 n 輸出描述 輸出缺失的數字 輸入 0,1,2,3,4,5,7 輸出 6通過迴圈 通過數學的思路,1 n的和為 n n 1 2 通過異或的特性,計算結果 相同的數字異...

牛客真題(4)操作序列

牛客真題,輸入乙個長度為n的序列,對序列的每一次操作分兩步,第一步將當前位元素放入新容器的末尾,第二步對新容器的序列進行反轉,這兩步操作執行n次,求新的容器序列的輸出結果。分析 1 可以使用容器存放序列,然後每加入一次,就進行反轉一次,知道n次,但是這樣會超時 2 其實可以找到規律,發現每次輸出的數...