soj 1509 rails 棧的應用

2021-06-18 20:17:23 字數 611 閱讀 3555

思路說明:

這一題就是給定乙個1~n排列,判定是否是1~n輸入序列的出棧序列,其中1~n可以任意時刻出棧入棧,也是黑書上一道例題吧

詳細解釋:

對輸入序列從頭開始檢索,fp是輸入序列的下標,rp是輸出序列的下標,並且新建乙個棧

if( fp==rp)

fp++,rp++;

else

st.push( inp[ip]);

}

易錯點:

在掃瞄最後輸入之後,仍要檢查一次,是否可以從棧中彈出

測試資料的讀取

個人收穫:

之前做過類似的題目,練了下編碼能力,邏輯可能會習慣一點

#include#includeusing namespace std;

int main()

stackstation;

rp=1;

for( fp=1; fp<=n; fp++)

station.push(inp[fp]);}}

while((!station.empty() )&&station.top()==oup[rp])

if(rp>n)

cout<<"yes"<

UVA 514 Rails 鐵軌 棧的模擬

標籤 空格分隔 演算法競賽 c 演算法 紫書 這道題第一次見是在acm俱樂部寒假訓練賽中,但是當時太菜了,即便知道是用棧來做,也想不出怎麼模擬。過了乙個寒假,學了些c 感覺能做了,但是找不到用棧模擬火車還是車站,所以還是做不出。直到看了提示,知道是用棧模擬車站後,這才做出來的。原題不打了,在紫書14...

UVA 514 Rails 鐵軌 棧的模擬

標籤 空格分隔 演算法競賽 c 演算法 紫書 這道題第一次見是在acm俱樂部寒假訓練賽中,但是當時太菜了,即便知道是用棧來做,也想不出怎麼模擬。過了乙個寒假,學了些c 感覺能做了,但是找不到用棧模擬火車還是車站,所以還是做不出。直到看了提示,知道是用棧模擬車站後,這才做出來的。原題不打了,在紫書14...

POJ 1363 Rails 合法的出棧序列

使用棧與佇列模擬入棧 出棧過程 輸入輸出格式搗鼓了半天 include include include include include include include include using namespace std typedef long long ll const int mod 100...