php 树状数组公式,PY个树状数组
樹狀數組比較簡單,于是就挑它下手了...
于是生活終于也對咱下手了...
要講的就兩個東西,一個是開數組,全局變量寫最前面,數組是這么開的: f=[0 for i in range(500005)]
另外一個就是 注意 split()
還有一句就是咱發現 python 對輸入數據格式的要求真的是肥腸嚴格的,如果某 oj ()上的題目數據出鍋的話,py 可能會出現各種奇妙的問題【霧
這給咱的啟示就是: 平時搞 OI 少 PY ,對心理 都不好
Codef=[0 for i in range(500005)]
def lowbit(x):
return x&(-x)
def add(x, n, k):
while x<=n :
f[x]+=k
x+=lowbit(x)
def ask(x):
Res=0
while x>0:
Res+=f[x]
x-=lowbit(x)
return Res
s=input().split()
n=int(s[0])
m=int(s[1])
s=input().split()
for i in range(1,n+1):
add(i, n, int(s[i-1]))
while m>0:
s=input().split()
op=int(s[0])
x=int(s[1])
y=int(s[2])
if op==1:
add(x, n, y)
else:
print(ask(y)-ask(x-1))
m=m-1
總結
以上是生活随笔為你收集整理的php 树状数组公式,PY个树状数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用jsp实现右导航窗格_手机导航如何投放
- 下一篇: discuz search.php修改,