離散化(會繼續更新)

2021-09-12 01:28:37 字數 719 閱讀 5215

離散化這個概念困擾了我很久,我就是不太能夠理解離散化到底是在幹什麼。這幾天又好好看了一下。,總的來說,就是將一串很長或者說有的元素很大的數列進行「壓縮」,形成類似一種對映關係。

舉個例子,如果題目要求每個數的大小不超過1e9,但是如果開1e9的陣列直接進行操作的話,可能會mle,在有些時候我們不需要知道每個元素的具體值的大小,只需要知道他們的相對大小,這樣就可以進行離散化。

比如,就可以離散化成

先介紹一種方式

///離散化

#include using namespace std;

const int n=1e5+7;

int a[n],t[n];

int n,m;

int main()

順便說說這裡的unique()函式,unique()函式有「去重」功能,但不是真正的將重複的元素去除,而是將重複的元素壓到數列的後面去。與此同時,unique()函式還會返回乙個不重複元素的個數。

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

a[i]=lower_bound(t+1,t+m+1,a[i])-t;

上面這條語句,對於前m個元素,a[i]=lower_bound(t+1,t+m+1,a[i])-t 等價於a[i]=i,而對於後面的重複元素,使用lower_bound()函式,找到小於等於a[i]的第乙個元素的位置,即前面相同元素的順序。完成離散化

繼續遊園會

今天換個公園 也換個主題,去體育公園看豐富的體育運動.請注意,是看體育,本人到目前為止尚無法做到享受體育.不管怎樣,有意識就是值得鼓勵的,自己先給自己鼓掌了 早上我們都沒有睡懶覺,和寶寶飛奔到公園,今天好好地耍它一上午.那麼多的活動,寶寶卻似乎只對她的泡泡槍感興趣,打出一串串晶瑩剔透的泡泡吸引著和她...

不同封裝大小以及不同封裝轉換 會繼續更新

sma do 214ac smb do 214aa smc do 214ab inch 英呎 1 inch 25.4 mm 公制表示法英製表示法 含義 12063216 l 1.2inch 3.2mm w 0.6inch 1.6 mm 08052125 l 0.8inch 2.0mm w 0.5in...

離散化問題

題目傳送 uvalive 4127 the sky is the limit 大白書離散化簡單題。找了半天錯誤,居然是少輸出乙個空行。頓時感覺自己萌萌噠。其中計算幾何是套的之前留下的模板。ac include include include include include include inclu...