嘛,這是一道之前在比賽的時候和左學長研究過的題,多虧了左學長,現在這題能秒出。
解題方法是這樣的:
每次在棧裡放入乙個高度,但放入之前,需要保證棧裡面的元素是單調的,就相當於對於每乙個比當前高度高的牛都做了貢獻,每次答案加上單調棧裡面的元素個數即可,很簡單
上**:
#include
using namespace std;
const
int maxn=
8e4+7;
stack <
int> q;
int n,x;
long
long ans=0;
//注意開longlong
intmain()
printf
("%lld"
,ans)
;return0;
}
牛客資料結構佇列訓練題 蚯蚓
啊啊啊,好懷念,2016年的noip的試題,欸,當時我還是個小白,現在也是菜雞,這道用三個佇列即可完成 首先,我們來分析下對於每對 x1,x2 x1 x2 他們被剪斷後的操作 1 對於每一對x1,x2 x1 x2 p1 x1p p2 x1 x1p p3 x2p p4 x2 x2p 明顯p1 p3,p...
資料結構 單調棧
上班無事,刷力扣發現了個新名詞 單調棧 題目 496.下乙個更大元素 i 名字上就聽的出來,單調棧中存放的資料應該是有序的,所以單調棧也分為單調遞增棧和單調遞減棧 單調遞增棧 棧中資料出棧的序列為單調遞增序列 單調遞減棧 棧中資料出棧的序列為單調遞減序列 ps 這裡一定要注意所說的遞增遞減指的是出棧...
資料結構 單調棧
這是筆者的第一篇部落格,由於筆者自身水平的限制。用詞可能不夠準確,句子不太通順,水平可能也不太行,敬請指出,感激不盡!我們都知道棧 stack 是一種先入後出的資料結構,而單調棧建立在棧的基礎上,它區別於普通的棧的特殊之處在於 棧中的元素一直保持著單調遞增 單調遞減的關係 比如單調遞增棧中的元素自棧...