傳送門
這種「暴力線段樹」可以考慮一下是不是有什麼特殊性質。
對於這道題什麼要知道:
可能這裡寫得比較清楚(摘自)
感覺就是乙個迭代的過程。
而乙個數在操作k次之後就可以不用再操作了。
然後使用尤拉定理的時候要特判一下:
x>=phi時,最後要加乙個phi
小於則不加。
預處理出所有的phi,記得最後乙個phi為1。
#include#define ll long longview code#define n 50003
using
namespace
std;
intread()
while(s>='
0'&&s<='9')
return x*f;
}ll n,m,p,c;
ll num=0
;ll a[n],p[n];
int ok=0
;ll quick(ll a,ll x,ll mod)
return
ans;
}int phi(int
x) }
if(x!=1)ans=ans/x*(x-1
);
return
ans;
}ll sum[n
<<2],ge[n<<2
];void pushup(int
k)void build(int k,int l,int
r)
int mid=(l+r)>>1
; build(k
<<1
,l,mid);
build(k
<<1|1,mid+1
,r);
pushup(k);
}ll query(
int k,int l,int r,int l,int
r)
if(r>mid)
return ans%p;
}ll cal(ll x,ll times)
returnx;}
void modify(int k,int l,int r,int l,intr)
int mid=(l+r)>>1
;
if(l<=mid)modify(k<<1
,l,mid,l,r);
if(r>mid)modify(k<<1|1,mid+1
,r,l,r);
pushup(k);
}int
main()
p[++num]=1
;
int flagg=0
;
for(int i=1;i<=n;++i)a[i]=read();
build(
1,1,n);
for(int i=1;i<=m;++i)
else
if(op==1
) }}
SHOI 2017 相逢是問候
loj 2142 相逢是問候 首先 這道題目很輕易地就能想到用線段樹求和 但是題目的難點在於 ca imodp caimod pmodp 解決這個問題的公式是 ab abmod p b ai p modp 根據這個公式逆推一下 ca imodp caimod p ai p p modp 以下簡寫 b...
4869 Shoi2017 相逢是問候
4869 shoi2017 相逢是問候 time limit 40 sec memory limit 512 mb submit 440 solved 124 submit status discuss description informatikverbindetdichundmich.資訊將你我...
六省聯考2017 相逢是問候
題意 給定乙個長度為n的序列a,常數p和c。你需要支援m次操作,分為兩種 n,m leq 50000,c題解 一般像這種看起來根本沒法維護的線段樹題都是操作幾次就變常數了,於是我們考慮一下這個操作的性質。首先引入拓展尤拉定理 a mod p begina b 注意到 phi p 在 k 30 左右的...