time limit: 20 sec memory limit: 256 mb
submit: 177 solved: 127
[submit][status][discuss]
小c最近在學習線性函式,線性函式可以表示為:f(x) = kx + b。現在小c面前有n個線性函式fi(x)=kix+bi ,他對這n個線性函式執行m次操作,每次可以:
1.m i k b 代表把第i個線性函式改為:fi(x)=kx+b 。
2.q l r x 返回fr(fr-1(...fl(x))) mod 10^9+7 。
第一行兩個整數n, m (1 <= n, m <= 200,000)。
接下來n行,每行兩個整數ki, bi。
接下來m行,每行的格式為m i k b或者q l r x。
對於每個q操作,輸出一行答案。
5 54 2
3 65 7
2 67 5
q 1 5 1
q 3 3 2
m 3 10 6
q 1 4 3
q 3 4 4
1825
17978
981 <= n, m <= 200,000,0 <= k, b, x < 1000,000,007
[submit][status][discuss]
莫名其妙,線段樹維護一下區間的函式和就好了,單點修改,區間查詢,比gss還水……
update 感覺這麼水的題,再睏還是可以寫出來的,補**……
1 #include2#define n 200005
3#define m 800005
4#define p 1000000007
5int
n,m,ki[n],bi[n],k[m],b[m];
6void build(int t,int l,int
r)15}16
void build(int t,int l,int r,int
p)25}26
int query(int t,int l,int r,int x,int y,int
v)33
main()
45 }
@author: yousiki
bzoj4499 線性函式
題目描述 小 c 最近在學習線性函式,線性函式可以表示為 f x kx b 現在小 c 面前有 n 個線性函式 f i x k ix b i 他對這 n 個線性函式執行 m 次操作。每次可以 1.m i k b 代表把第 i 個線性函式改為 f i x kx b 2.q l r x 返回 f r f...
BZOJ4499 線性函式 線段樹
題目大意 小c最近在學習線性函式,線性函式可以表示為 f x kx b。現在小c面前有n個線性函式fi x kix bi 他對這n個線性函式執行m次操作,每次可以 1.m i k b 代表把第i個線性函式改為 fi x kx b 2.q l r x 返回fr fr 1 fl x mod 10 9 7...
bzoj 4499 線性函式 線段樹
題目鏈結 想說的話 沒什麼想說的 題解 我們都知道 f2 f1 x k2 k1 x b1 b2 k1 k2 x k2 b1 b1 然後用線段樹去維護連續的一段最終的f x 是什麼 查詢修改就都很簡單了.include define mod 1000000007 define maxn 200020 ...