大一暑期集訓一 棧和佇列

2021-09-25 07:06:18 字數 3064 閱讀 5784

訓練賽(部分)

#include

typedef struct qnodeqnode;

typedef structlq;

qnode *p;

lq q;

void

init()

bool empty()

void

push

(int x)

bool pop()

intsize()

return cnt;

}int

main()

printf

("len=%d\n"

,size()

);return0;

}

#include

const

int max_num=10;

typedef struct qnodeqnode;

typedef structlq;

qnode *p;

lq q[max_num+7]

;void

init()

}bool empty()

return

true;}

void

push

(int pos,

int x)

bool pop

(int pos)

intsize

(int pos)

return cnt;

}int

main()

for(

int i=

0;i++i)

printf

("\n");

}printf

("\n\n");

for(

int i=

0;i1;i+=2)

pop(i)

;for

(int i=

0;i++i)

printf

("\n");

}return0;

}

#include

using namespace std;

const

int max_num=

107;

int stuckk[max_num]

;int top=0;

void

push

(int x)

intpop()

bool empty()

void

solve

(int x,

int r)

intmain()

其他題比較水,就不貼了。

題目。題意:查詢第n個醜數。醜數定義:質因子僅是:2、3、5的數。

思路:預處理打表。由醜數定義易發現如下規律。用優先佇列遍歷樹+set儲存即可,set主要是為了去重。但有乙個注意點(此處1wa),出隊時存入set,而非元素入隊時。

這類可以找規律的題,一般可以先寫個暴力,用來找規律或與自己程式對拍資料。像這題暴力寫完發現 第1500個醜數是8e9+,o(n)都過不了,那就是穩穩的規律題了。

這題一開始我的思路是爆改素數篩,仔細一想,發現改不了,寫個暴力發現素數篩複雜度也不允許。

於是老實寫資料結構吧。

題目。

題意:求最長匹配括號子串。

思路:用棧模擬一遍完事。這題很煩的是輸入輸出格式換行莫名其妙(此處3pe)。

水題,不知道為什麼沒人寫,括號匹配各類問題還是經常遇到的。

//辣雞輸入輸出

#include

#include

#include

using namespace std;

const

int max_num=

100017

;struct sb[max_num]

;int

main()

s t=s.

top();

if((t.x==

'('&&a[i]

==')')||

(t.x==

'['&&a[i]

==']'))

else

}int maxx=

0,res=

0,index=0;

for(

int i=

0;i)while

(i!b[i]

.f) i++

,res=0;

}for

(int i=index;i

++i)

printf

("%c"

,a[i]);

printf

("\n\n");

}return0;

}

大一暑期總結

我的暑期集訓總結 廣東工業大學 acm集訓隊 今年暑假是我進入大學的第乙個暑假,很遺憾我沒像其他同學 朋友一樣出去外面打工或者出去外面旅遊,然而我卻過得很充實,很有意義。這可能和我愛受虐的性格有關吧!整個暑假都是在打擊與各大高校狂虐中度過。不過虐歸虐,開心充實的日子還是有的 我們的集訓是從七月二十二...

大一寒假集訓(9) 優先佇列

定義乙個priority queue的方法為 priority queue name type通常為結構體 其中,type可以是任何基本型別或者容器,name為優先隊 列的名字。和queue不一樣的是,priority queue沒有front 和back 而只能通過top 或pop 訪問隊首元素 ...

大一寒假集訓(8) 佇列

佇列的定義 佇列就是允許在一端進行插入,在另一端進行刪 除的線性表。允許插入的一端稱為隊尾,通常用乙個 隊尾指標r指向隊尾元素,即r總是指向最後被插入的 元素 允許刪除的一端稱為隊首,通常也用乙個隊首 指標f指向排頭元素的前面。初始時f r 0 佇列的基本操作 1 初始化佇列 queue int v...