牛客 貨物種類 差分

2021-10-03 03:28:48 字數 784 閱讀 1141

題目大意:有 n 個倉庫,接下來有 m 次進貨,每次進貨會向[ l , r ]區間內的倉庫進入種類為 w 的貨物,最後問哪個倉庫的貨物種類最多

題目分析:看到是區間問題,下意識想到了線段樹,但實際上線段樹處理這種不同顏色的問題一般都是狀態壓縮,但顯然這個題目貨物的種類範圍到達了1e9,所以肯定不是顏色統計的模板題了,比賽的時候差分的想法在腦中浮現過一次,但很快就被自己否決了,原因還是因為自己不會呀,賽後補提的時候看了一下大佬們的**,恍然大悟,差分+乙個map維護一下區間內的出現次數就好了,非常簡單的一道思維題

**:

#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;

typedef long long ll;

typedef unsigned long long ull;

const int inf=0x3f3f3f3f;

const int n=1e5+100;

vectoradd[n],del[n];

mapvis;

int main()

int mmax=-inf,mark,cnt=0;

for(int i=1;i<=n;i++)

for(auto j:del[i])

if(cnt>mmax)

}printf("%d\n",mark);

return 0;

}

牛客小白月賽22 貨物種類

作為無腦型選手,上來看到這種區間題,不考慮複雜度 因為不會算qaq 直接上來搓一發線段樹,那結果超時是必然的 後面才想到有個差分序列 所以stl套一套 差分序列,求字首和,就可以了 include using namespace std unordered map int,unordered map...

牛客小白月賽22 貨物種類 題解(差分)

前言 看到題目沒什麼思路,以為是線段樹,但是明顯會t,這題算是第一次用差分做題吧 正文 每次選擇一段區間放入物品,問所有操作完成後物品種類最多的位置是幾。區間操作,只有在最後有一次詢問所以很顯然可以用差分進行求解差分對於每個位置維護乙個陣列,最後統計更新答案。當然,也可以用某些資料結構來解。講解 在...

差分 最高的牛

最高的牛 有 n 頭牛站成一行,被編隊為1 2 3 n,每頭牛的身高都為整數。當且僅當兩頭牛中間的牛身高都比它們矮時,兩頭牛方可看到對方。現在,我們只知道其中最高的牛是第 p 頭,它的身高是 h 剩餘牛的身高未知。但是,我們還知道這群牛之中存在著 m 對關係,每對關係都指明了某兩頭牛 a 和 b 可...