→題目鏈結←
【想說的話】
沒什麼想說的-____-
【題解】
我們都知道 f2(f1(x))=k2(k1*x+b1)+b2=k1*k2*x+k2*b1+b1
然後用線段樹去維護連續的一段最終的f(x)是什麼
查詢修改就都很簡單了...
【**】
#include#define mod 1000000007
#define maxn 200020
typedef long long ll;
using namespace std;
inline ll rd()
while(c>='0'&&c<='9')x=x*10+c-'0',c=getchar();
return x*y;
}struct node
};struct node1tree[maxn*4];
int n,m;
node a[maxn];
void build(int x,int l,int r)
int mid=(l+r)/2;
build(x*2,l,mid);
build(x*2+1,mid+1,r);
tree[x].line=tree[x*2].line+tree[x*2+1].line;
}node query(int x,int l,int r)
void update(int x,int y,node k)
int mid=(tree[x].l+tree[x].r)/2;
if(y<=mid)update(x*2,y,k);
else update(x*2+1,y,k);
tree[x].line=tree[x*2].line+tree[x*2+1].line;
}int main()
else }
return 0;
}
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...
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...
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 1 n,...