UVa514鐵軌 火車進站問題

2021-09-11 09:02:53 字數 691 閱讀 9472

具體題目如下:

先列舉我用c語言寫的**:

#include #define maxn 1000+10

int n,target[maxn];//n用來儲存火車的數量,target用來儲存火車出站順序

typedef structstack;

int empty(stack s)//判斷棧是否為空

int top(stack s)//獲得棧頂元素

void pop(stack* s)//出棧

void init(stack* s)//初始化乙個棧

void push(stack* s,int m)//入棧

int main() //如果一輛車的序號和出棧序號相同,都加1

else if(!empty(s) && top(s) == target[b])//如果棧頂元素和出棧序號相同,pop一下,b指向下一位

else if(a <= n)push(&s,a++);//最後一輛車之前,壓棧

else//都不符合上述條件,則不可能按這種方式出棧

}printf("%s\n",ok?"yes":"no");//列印結果

}return 0;

}

UVA514 鐵軌 Rails 題解

入站序列是1 n,入站後判斷如果等於出站序列的當前值,則直接出站。否則就在棧裡待著不動。模擬即可,可以選擇使用stl棧或手寫。include include include using namespace std int a 1005 n,cnt,bh,pd intmain cnt bh pd 1 ...

UVA514 鐵軌 Rails 題解

入站序列是1 n,入站後判斷如果等於出站序列的當前值,則直接出站。否則就在棧裡待著不動。模擬即可,可以選擇使用stl棧或手寫。include include include using namespace std int a 1005 n,cnt,bh,pd intmain cnt bh pd 1 ...

UVa 514 鐵軌 棧的學習

題目 鐵軌 題目描述 某城市有乙個火車站,有n節車廂從a方向駛入車站,按進站的順序編號為1 n.你的任務是判斷是否能讓它們按照某種特定的順序進入b方向的鐵軌並駛入車站。例如,出棧順序 5 4 1 2 3 是不可能的,但是 5 4 3 2 1 是可能的。題目分析 為了重組車廂,借助中轉站,對於每個車廂...