區間 interval 牛客

2021-08-21 17:47:51 字數 1016 閱讀 3694

apojacsleam喜歡陣列。

他現在有乙個n個元素的陣列a,而他要對a[l]-a[r]進行m次操作:

操作一:將a[l]-a[r]內的元素都加上p

操作二:將a[l]-a[r]內的元素都減去p

最後詢問a[l]-a[r]內的元素之和?

請認真看題乾及輸入描述。

輸入共m+3行:

第一行兩個數,n,m,意義如「題目描述」

第二行n個數,描述陣列。

第3-m+2行,共m行,每行四個數,q,l,r,p,若q為1則表示執行操作2,否則為執行操作1

第4行,兩個正整數l,r

乙個正整數,為a[l]-a[r]內的元素之和
示例1

複製

10 5

1 2 3 4 5 6 7 8 9 10

1 1 5 5

1 2 3 6

0 2 5 5

0 2 5 8

1 4 9 6

2 7

複製

23
//樹狀陣列 區間更新單點查詢

#include#include#define lowbit(x) x&(-x)

int n;

int a[1000005];

int c[1000005];

//查詢函式

int getsum(int x)

return sum;

}//更新函式

void update(int x,int v)

}int main()

memset(c,0,sizeof(c));

int q,l,r,p;

while(m--)

else

}scanf("%d%d",&l,&r);

long long s=0;

for(int i=l;i<=r;i++)

printf("%lld",s);

}

區間 interval 牛客小白月賽5

apojacsleam喜歡陣列。他現在有乙個n個元素的陣列a,而他要對a l a r 進行m次操作 操作一 將a l a r 內的元素都加上p 操作二 將a l a r 內的元素都減去p 最後詢問a l a r 內的元素之和?請認真看題乾及輸入描述。輸入共m 3行 第一行兩個數,n,m,意義如 題目...

牛客小白月賽5 區間 interval

傳送門 題目大意就是給你長度為n的區間,然後有m次操作,操作完了再查詢區間和。做法就是用字首和和差分,這是我第一次用差分,首先設乙個change陣列用來存每個位置的變化值,先清0,假如是修改 l,r 區間,該區間每個數加p的話,c l p,c r 1 p,之所以不是直接c l p,c r 1 p,是...

字首和 區間 interval

apojacsleam喜歡陣列。他現在有乙個n個元素的陣列a,而他要對a l a r 進行m次操作 操作一 將a l a r 內的元素都加上p 操作二 將a l a r 內的元素都減去p 最後詢問a l a r 內的元素之和?請認真看題乾及輸入描述。輸入共m 3行 第一行兩個數,n,m,意義如 題目...