2026-07-31
多项式全家桶(完善中)
namespace Polynomial{ const int N=2e6+5,G=3,iG=332748118; int cir[N],w[N],r[N],sav[N]; void fft(int f,int len,int t){ …
标签浏览
这里包含当前标签及其所有子标签下的文章。
2026-07-31
namespace Polynomial{ const int N=2e6+5,G=3,iG=332748118; int cir[N],w[N],r[N],sav[N]; void fft(int f,int len,int t){ …
2026-07-31
int fac[N],ifac[N]; struct lagrange{ int xs[N],ys[N],w[N],K,p[N],s[N]; inline int fk(int k){ return …
2026-07-31
inline int qpow(int x,int t){ int ret=1; for(;t;t>>=1,x=x*x%mo)if(t&1)ret=ret*x%mo; return ret; } struct …
2026-07-31
struct PAM{ int fail[N],nxt[N][27],len[N],last,pool; void init(){ for(int i=0;i<=pool;++i){ …
2026-07-31
struct SuffixAutoMaton{ int pool=1,len[N],nxt[N][27],last=1,fail[N]; void init(){ for(int …
2026-07-31
int rk[N<<1],oldrk[N<<1]; pair<pair<int,int>,int> sa[N]; for(int i=1;i<=len;++i){ …
2026-07-31
struct matrix{ int a[2][2],n,m; matrix(){} matrix(int x,int y){ n=x,m=y; memset(a,0,sizeof(a)); } matrix operator …
2026-07-31
高斯消元 struct gauss{ double a[N][N],x[N]; int work(){ int p; double val; for(int i=1;i<=n;++i){ p=-1; for(int …
2026-07-31
int cir[N]; void fft(int *f,int len,int t){ memset(cir,0,sizeof(int)*len); for(int i=0;i<len;++i){ …
2026-07-31
FMT struct FMT{ int fmt[1<<N]; void insert(int *f){ for(int i=0;i<n;++i)fmt[i]=f[i]; } void FMT_or(int tag){ …
2026-07-31
mt19937 rnd(time(0)); struct FHQtreap{ int lc[N],rc[N],val[N],key[N],siz[N],pool,root; int create(int x){ int …
2026-07-31
int z[N],ex[N],n,m; void get_z(){ int l=1,r=1;z[1]=m; for(int i=2;i<=m;++i){ if(i<=r)z[i]=min(z[i-l+1],r-i+1); …