算法筆記--關於求前綴和前的O(1)詢問更新
所有元素初始值為0才能這麽做。
①l--r全加1
a[l]++;
a[r]--;
求一遍前綴和為元素本身。
求兩遍前綴和為元素前綴和。
例題:http://codeforces.com/problemset/problem/816/B
②l--r從1加到l-r+1
a[l]++;
a[r+1]-=l-r+2;
a[r+2]+=l-r+1;
求兩遍前綴和為元素本身。
求三遍前綴和為元素前綴和。
因為更新時復雜度是o(1)所以復雜度為求前綴和時的o(N)。
例題:http://arc077.contest.atcoder.jp/tasks/arc077_c
算法筆記--關於求前綴和前的O(1)詢問更新
相關推薦
算法筆記--關於求前綴和前的O(1)詢問更新
初始 ems target blank -- 所有 href lan 復雜 所有元素初始值為0才能這麽做。 ①l--r全加1 a[l]++; a[r]--; 求一遍前綴和為元素本身。 求兩遍前綴和為元素前綴和。 例題:http://codeforces.com/proble
Codeforces Round #340 (Div. 2) E. XOR and Favorite Number 【莫隊算法 + 異或和前綴和的巧妙】
lag ans integer ons lap stand 推出 open closed 任意門:http://codeforces.com/problemset/problem/617/E E. XOR and Favorite Number time limit p
【算法競賽進階指南】前綴和BZOJ1218激光炸彈
std 前綴和 目標 操作數 int main 數據 bzoj1218 esp 題目是二維前綴和,N^2完成維護 S[i,j]=S[i-1,j]+S[i,j-1]+A[i,j],簡化操作數據直接輸入S中 題目中要註意目標的坐標,往往被包含在x+1,y+1之中 #includ
回文的範圍——算法面試刷題2(for google),考察前綴和
代碼 feedback str 工作 rap scrip strong tle data- 如果一個正整數的十進制表示(沒有前導零)是一個回文字符串(一個前後讀取相同的字符串),那麽它就是回文。例如,數字5, 77, 363, 4884, 11111, 12121和
AtCoder Regular Contest 075 E - Meaningful Mean 樹狀數組求順序對, 前綴和
n) cin 答案 bound std lan memset main ani 題目鏈接: http://arc075.contest.atcoder.jp/tasks/arc075_c 題意: 給你一個序列和一個數k,求有多少對l,r,使得a[l]+a[l+1]+...+
算法筆記--圖的存儲之鏈式前向星
算法筆記 div soft 鏈式前向星 target href 圖的存儲 blank 所有 鏈式前向星 這個博客寫的不錯:http://www.cnblogs.com/Tovi/p/6194786.html 模板: ①add_edge void add_e
【簡單算法】20.最長公共前綴
div false span lower color bre 簡單 包含 turn 題目: 編寫一個函數來查找字符串數組中的最長公共前綴。 如果不存在公共前綴,返回空字符串 ""。 示例 1: 輸入: ["flower","flow","flight"] 輸出: "
前綴和----求最大子矩陣和
span www sca 貪心 mda 就是 can 它的 for 本文部分借鑒源於大佬的博客:http://www.cnblogs.com/mrclr/p/8423136.html%20 現在有一個問題,有一個一維數組,求它的最大區間和。 我們
高斯求和等差數列前綴和(洛谷1147 連續自然數和)
數學 i++ -a 一半 自己 簡潔 空格 ron div 對一個給定的自然數M,求出所有的連續的自然數段,這些連續的自然數段中的全部數之和為M。 例子:1998+1999+2000+2001+2002 = 10000,所以從1998到2002的一個自然數段為M=10
二分查找前綴和(洛谷1314聰明的質監員NOIP2011提高組)
ron min 最小值 一個數 -s 判斷 inf bre sync 小T 是一名質量監督員,最近負責檢驗一批礦產的質量。這批礦產共有 n 個礦石,從 1到n 逐一編號,每個礦石都有自己的重量 wi 以及價值vi 。檢驗礦產的流程是: 1 、給定m 個區間[Li,Ri
【bzoj4868】[Shoi2017]期末考試 前綴和
[1] con microsoft pre log mic 表示 div 描述 題目描述 有n位同學,每位同學都參加了全部的m門課程的期末考試,都在焦急的等待成績的公布。第i位同學希望在第ti天或之前得知所.有.課程的成績。如果在第ti天,有至少一門課程的成績沒有公布,他
CodeForces 816B Karen and Coffee(前綴和,大量查詢)
pre div 準備 nes 個數 contain 端點 -i integer CodeForces 816B Karen and Coffee(前綴和,大量查詢) Description Karen, a coffee aficionado, wants to know
和為k的連續區間 前綴和
i++ code 結束 lns out blog 數列 .org sizeof 一整數數列a1, a2, ... , an(有正有負),以及另一個整數k,求一個區間i,ji,j,(1 <= i <= j <= n),使得aii + ... + ajj =
ACdreamoj 1011(樹狀數組維護字符串hash前綴和)
cdr popu stdin ace fin 代碼 long long 方法 snippet 題目鏈接:http://acdream.info/problem?pid=1019 題意:兩種操作,第一種將字符串某個位置的字符換為還有一個字符。另外一種查詢某個連續子序
CF427 C star sky 二維數組前綴和
problem main urn str 亮度 等價 前綴 sizeof 矩形區域 用pre[t][i][j]存時間等價於t時坐標(1, 1) 和(i, j)組成的矩形區域的星星總亮度。再註意一下一個坐標處可以有多顆星星就可以了。 star sky 1 // http
Codeforces Round #427 (Div. 2) Problem C Star sky (Codeforces 835C) - 前綴和
題目 scan 開心 color 一個 lin cond cati ict The Cartesian coordinate system is set in the sky. There you can see n stars, the i-th has coordi
Codeforces 838A - Binary Blocks(二維前綴和+容斥)
using min class blank -i push_back cin size 1的個數 838A - Binary Blocks 思路:求一下前綴和,然後就能很快算出每一小正方塊中1的個數了,0的個數等於k*k減去1的個數,兩個的最小值就是要加進答案的值。 代碼:
51nod 1682 中位數計數(前綴和)
int 計數 ret sizeof == clas out using ron 51nod 1682 中位數計數 思路: sum[i]表示到i為止的前綴和(比a[i]小的記為-1,相等的記為0,比a[i]大的記為1,然後求這些-1,0,1的前綴和); hash[sum[i]
【bzoj4972】小Q的方格紙 前綴和
sample 面積 滿了 div zoj pac 需要 fine namespace 題目描述 方格紙與草稿紙一樣,都是算法競賽中不可或缺的重要工具。身經百戰的小Q自然也會隨身帶著方格紙。小Q的方格紙有n行m列,一共n*m個方格,從上到下依次標記為第1,2,...,n行,
51nod 1103 N的倍數 思路:抽屜原理+前綴和
相等 ace http 程序 pre logs amp cin images 題目: 這是一道很神奇的題目,做法非常巧妙。巧妙在題目要求n個數字,而且正好要求和為n的倍數。 思路:用sum[i]表示前i個數字的和%n。得到sum[ 1-N ]共N個數字。 N個數