時間限制:
2000 ms | 記憶體限制:
65535 kb
難度:4 描述
螞蟻終於忍受不了宇宙總部要回地球了,它叮囑我不要再編它的故事了,
有啥事直接說,有啥問題直接問就好了,它相信大家都能替他解決的,
畢竟都解決了不少問題了。
好,這次就直接說問題
求乙個序列的某個區間中出現了多少不相同的數字。對於乙個序列會詢問很多很多次。
輸入第一行乙個整數t,表示t組資料 (t < 10)
每組資料第1行乙個整數 n 表示第2行有 n 個整數ai (n <= 30000, 1 <= ai <= 1000000)
第3行乙個整數 m 表示有 m 次詢問的區間(m <= 200000)
第4行開始往後m行每行兩個整數a b,表示詢問的區間[a,b] (1 <= a <= b <= n)
輸出每組資料m行,輸出表示結果
樣例輸入
151 1 2 1 3
31 5
2 43 5
樣例輸出
323
提示 huge inpiut ,please use scanf to read.
解題思路:區間問題,而且又沒有更新,莫隊演算法正適合處理這類情況,如果比較熟悉莫隊的話就是水題啦。。
#include#include#include#include#include#includeusing namespace std;
const int maxn = 300005;
const int maxm = 200005;
int n,m,block,a[maxn],res[maxm];
int map[1000005];
struct node
}q[maxm];
void solve()
while(l < q[i].l)
while(l > q[i].l)
while(r < q[i].r)
while(r > q[i].r)
res[q[i].id] = ans;
} for(int i = 1; i <= m; i++)
printf("%d\n",res[i]);
}int main()
solve();
} return 0;
}
94計票統計
題目描述 請實現介面 unsigned int addcandidate char pcandidatename 功能 設定候選人姓名 輸入 char pcandidatename 候選人姓名 輸出 無 返回 輸入值非法返回0,已經新增過返回0 新增成功返回1 void vote char pcan...
聊聊近況9 4
開發學習基本陷入了停滯,上個月boss派了其他的工作,不過已經快快快的快做完了。又是一年國慶時,今年大大小小的單位合唱表演一家挨一家。本單位也擺脫不了,本來不用去了,但是原來參加的人退下來了,被迫參與進去,個人感覺每天還是有點占用時間,不然工作還能趕趕進度。最近生活上發生的瑣事雜事煩事挺多,一件又一...
網頁設計 9 4
文字外觀屬性 1.color屬性 用於定義文字的顏色,其取值方式有如下3種 預定義的顏色值,如red,green,blue等。十六進製制,如 ff0000,ff6600,29d794等。實際工作中,十六進製制是最常用的定義顏色的方式。rgb 如紅色可以表示為rgb 255,0,0 或rgb 100 ...