P1044 NOIP2003 普及組 棧

2022-09-19 17:15:13 字數 1340 閱讀 7210

棧是計算機中經典的資料結構,簡單的說,棧就是限制在一端進行插入刪除操作的線性表。

棧有兩種最重要的操作,即 pop(從棧頂彈出乙個元素)和 push(將乙個元素進棧)。

棧的重要性不言自明,任何一門資料結構的課程都會介紹棧。寧寧同學在複習棧的基本概念時,想到了乙個書上沒有講過的問題,而他自己無法給出答案,所以需要你的幫忙。

寧寧考慮的是這樣乙個問題:乙個運算元序列,1,2,\ldots ,n1,2,…,n(圖示為 1 到 3 的情況),棧 a 的深度大於 nn。

現在可以進行兩種操作,

將乙個數,從運算元序列的頭端移到棧的頭端(對應資料結構棧的 push 操作)

將乙個數,從棧的頭端移到輸出序列的尾端(對應資料結構棧的 pop 操作)

使用這兩種操作,由乙個運算元序列就可以得到一系列的輸出序列,下圖所示為由1 2 3生成序列2 3 1的過程。

(原始狀態如上圖所示)

你的程式將對給定的 nn,計算並輸出由運算元序列 1,2,\ldots,n1,2,…,n 經過操作可能得到的輸出序列的總數。

輸入檔案只含乙個整數 nn(1 \leq n \leq 181≤n≤18)。

輸出檔案只有一行,即可能輸出序列的總數目。

輸入 #1複製

3
輸出 #1複製

5
【題目**】

noip 2003 普及組第三題

1 #include 2

using

namespace

std;

3int

main() ;//

當只有0和1個元素是出棧方式只有一種

6 cin >>n;7/*

假設第 k 個小球最後出管:

8比 k 早入且早出有 k - 1 個數,有 h[k - 1] 種出管方式;

9比 k 晚入且早出有 n - k 個數,有 h[n - k] 種出管方式,

10一共有 h[k - 1]×h[n - k] 種出管方式。

11遞推式為 h[n] = h[0]×h[n-1] + h[1]×h[n-2] + ... + h[n-1]×h[0

*/12

for (int i = 2;i <= n;i++) 16}

17 cout <

18return0;

19 }

P1042 NOIP2003 普及組 桌球

華華通過以下方式進行分析,首先將比賽每個球的勝負列成一張表,然後分別計算在1111分制和2121分制下,雙方的比賽結果 截至記錄末尾 比如現在有這麼乙份記錄,其中w表示華華獲得一分,l表示華華對手獲得一分 wwwwwwwwwwwwwwwwwwwwwwlw在1111分制下,此時比賽的結果是華華第一局1...

普及 NOIP 2003 桌球

題目背景 國際乒聯現在主席沙拉拉自從上任以來就立志於推行一系列改革,以推動桌球運動在全球的普及。其中11分制改革引起了很大的爭議,有一部分球員因為無法適應新規則只能選擇退役。華華就是其中一位,他退役之後走上了桌球研究工作,意圖弄明白11分制和21分制對選手的不同影響。在開展他的研究之前,他首先需要對...

數字遊戲 NOIp普及組 2003 普及 提高

數字遊戲 題目描述 丁丁最近沉迷於乙個數字遊戲之中。這個遊戲看似簡單,但丁丁在研究了許多天之後卻發覺原來在簡單的規則下想要贏得這個遊戲並不那麼容易。遊戲是這樣的,在你面前有一圈整數 一共nn個 你要按順序將其分為mm個部分,各部分內的數字相加,相加所得的mm個結果對1010取模後再相乘,最終得到乙個...