昨天對著**看了一晚上
然後今天終於在loj上過了
數列分塊入門9題撒花★,°:.☆( ̄▽ ̄)/$:.°★ 。
然後相當玄學
塊的大小調成\(\sqrt\)會tle,改成150就過了
嘖然後就是用map離散化之後的值不能直接比較大小
鍋鍋鍋
#include #include #include #include #include #include using namespace std;
int belong[100100],f[1000][1000],sz,blocknum,n,val[100100],id=0,cnt[100100],a[100100];
vectorvec[100100];
mapto;
void calbe(int n)
void pre(int x)
}int query(int l,int r,int c)
int query(int l,int r)
return ans;
}int main()
a[i]=to[a[i]];
vec[a[i]].push_back(i);
}for(int i=1;i<=blocknum;i++)
pre(i);
for(int i=1;i<=n;i++)
return 0;
}
Loj 6285 數列分塊入門 9
思路 離散化處理下就好了,具體解釋在 裡 ps 小新新別看了,你學不會的 實現 includeusing namespace std const int m 1e5 10 int n,block,idx,a m bl m f 510 510 val m cnt m vector ve m void ...
loj 6285 數列分塊入門 9
題目 傳送門 簡要題意 給出乙個長為 n 的數列,以及 n 個操作,操作涉及詢問區間的最小眾數。題解 很開心,最後一題.分塊刷的非常高 惡 興 心 據說原題是一道超級大難題.還是先做做簡單的吧.首先用dp求出第i塊到第j塊的最小眾數.然後神奇的stl開始來襲.依舊分情況走一波.對於我們需要處理的其中...
LOJ 6285 數列分塊入門 9 區間眾數
如果只查詢眾數的個數,完全可以莫隊,加數時容易維護眾數的數量,刪除數時,眾數的數量要麼減1,要麼不變,只需再開乙個標記陣列維護眾數的數量即可 根據陳立傑 區間眾數解題報告 實現了下面兩種解法 解法一 塊數分成sqrt n 超時了,150可以過 分塊真毒瘤 pragma gcc optimize 2 ...