有乙個新的研究顯示,人在看見一系列的時,如果它們的排列有一定的軸對稱性,則會更為覺得賞心悅目。根據這個特性,作為阿里巴巴旗下重要的電子商務交易平台的**,希望了解商品推薦的走馬燈現在的賞心悅目情況,以便判斷是否之後需要做出調整。例如,當價值分別為 1,2,1 的商品排列在一起的時候,人們可以看到它的所有非空區間 [1]、[2]、[1]、[1,2]、[2,1]、[1,2,1] 中有四個是軸對稱的,所以這組的展示價值是所有軸對稱的非空區間的所有價值總和 1 + 2 + 1 + (1 + 2 + 1) = 8。
對於現在**商品推薦的走馬燈序列裡的,我們從左到右將它們自 1 開始依次遞增編號。現在我們希望了解,對於每次由兩個編號 li, ri 組成的第i次詢問,若將 li 到 ri 的這些選出進行展示,他們的展示價值是多少。
輸入格式
第一行輸入兩個整數 n (1 ≤ n ≤ 105), m (1 ≤ m ≤ 105),分別代表總數和詢問次數。
第二行一共 n 個整數 ci (-100 ≤ ci ≤ 100),表示從編號 1 到編號 n 的價值。
接下來 m 行,每行兩個整數 li, ri (1 ≤ li ≤ ri ≤ n),表示一組詢問 [li, ri]。
輸入資料保證詢問區間合法,價值 ci 滿足 -100 ≤ ci≤ 100。
對於簡單版本,1 ≤ n, m ≤ 300;
對於中等版本,1 ≤ n ≤ 20000,1 ≤ m ≤ 3000;
對於困難版本,1 ≤ n, m ≤ 100000。
輸出格式
一共輸出 m 行,每行輸出一組詢問對應的展示價值。
樣例1輸入:
5 2輸出:1 1 0 1 0
2 41 2
4做出來時,一小時31分鐘了,不知道能不能ac了4
#include#includeusing namespace std;
class segmenttreenode2
}; class solution
int query(segmenttreenode2 *root,int start,int end,vector&a)
if(start>=root->right->start)
else if(end<=root->left->end)else
}
};int main()
solution s;
segmenttreenode2 *root=s.build(0,n-1,d);;
for(int i=0;i} }
文字走馬燈效果
文字走馬燈效果 最近碰到的問題,由於label的size固定,而label.caption太長,無法完整顯示出來,要求實現文字走馬燈效果,依次顯示出完整的內容。文字走馬燈效果有幾種方法 1 通過移動label.left值實現,但label會移動。不符合要求 2 不斷複製lable.caption來實...
progressBar走馬燈設定
初始值visible false 讓progressbar1出現時 progressbar1.visible true progressbar1.style progressbarstyle.marquee 走馬燈 讓它消失時 progressbar1.visible false progressb...
vue Element UI走馬燈元件重寫
1 element ui走馬燈元件 carousel 分析一波源 carousel src main.vue 檔案為 el carousel檔案主要功能 carousel src item.vue 檔案為 el carousel item 功能 2 carousel src main.vue檔案詳解...