OIer 蚌埠住的瞬间

持续更新。代码中省略了无关部分。

else op=2;ans++;

#define id(i,j) (i*(m-1)+j)

e[i].w-=p;e[i^1].w-=p;

fio("partition\n");

#define id(i,j) (i*(m+1)+j)
int p=id(i+1,j);

int y=0.1;

(g[i]+=f[i-1])%mod;

(莫队)
for(int j=l;j<=r;j++)Add(j,1);
...
for(int j=r;j;j--)Del(j);

long long x=1ll<<64

dpg=((1ll<<x)*vlf+dpg)%mod;

for(;hd<tl&&Y[sh]-Y[fh]>=2ll*A*a[i]*(X[sh]-X[fh]);hd--);

for(int i=0;i<4;i++)for(int k=0;k<4;k++)for(int j=0;k<4;k++);

matrix Qry(int x,int l,int r,int L,int R){
	if(L<=l&&r<=R)return t[x];
	matrix val=I;//I为单位矩阵 
	if(L<=mid)val=Qry(x<<1,l,mid,L,R);
	if(R>mid)val=val*Qry(x<<1|1,mid+1,r,L,R);
	return val;
}
matrix Qry(int x,int l,int r,int L,int R){
	if(L<=l&&r<=R)return t[x];
	matrix val=I;
	if(L<=mid)val=Qry(x<<1,l,mid,L,R);
	else val=val*Qry(x<<1|1,mid+1,r,L,R);
	return val;
}

if(b[i][j]<0)b[i][j]=mod-b[i][j];


void solve(int l,int r,int L,int R){
    if(l>r)return;
    int m=(l+R)>>1;
}
void dfs(int u){
    for(int v:e[u])dfs(u);
}
void dfs1(int u){
    dep[u]=dep[fat[u]+1];
}

for(;q.empty();q.pop());

std::sort(a+l+1,a+mid+1);

for(x=0;ch>='0'&&ch<='9';ch=gc())
    x=(x<<1)+(x<<4)+(ch^48);
void FWT(int*a,bool o){
    for(int i=1;i<m;i++)
        for(int j=0;j<m;j+=i+i)for(int k=0;k<i;k++)
            Add(a[i+j+k],o?a[j+k]:mod-a[j+k]);
}
for(x=0;ch<='0'&&ch<='9';ch=gc())
    x=(x<<1)+(x<<3)+(ch^48);

for(int i=1;i<d;++d)c[i]=1ll*c[i-1]*w%mod;

for(int i=0;i<n;++i){
    r[i]=(r[i>>1]>>1)+((i&1)?(n>>1):0);
    if(i<r[i])std::swap(i,r[i]);
}
int pw(int x,int y=mod-2){
    for(int v=1;;y>>1,x=1ll*x*x%mod){
        if(!y)return v;
        if(y&1)v=1ll*v*x%mod;
    }
}
bool chk2(int x,int y,int o){
    if(o==1)for(;y;--y)if(a[x][y])return 0;
    else if(o==2)for(;y<=m;++y)if(a[x][y])return 0;
    else if(o==3)for(;x;--x)if(a[x][y])return 0;
    else for(;x<=n;++x)if(a[x][y])return 0;
    return 1;
}
void Add(int u,int v,int w,double c){
    e[++cnt]={u,v,w,h[u],c};h[u]=cnt;
    e[++cnt]={v,u,0,h[u],-c};h[v]=cnt;
}
int Qry(int x,int l,int r,int L,int R){
    if(l==r)return t[x]<L?l:m+1;
    int val=m+1;
    if(R>mid)val=Qry(x<<1|1,mid+1,r,L,R);
    if(val<=m)return val;
    else if(L<=mid)return Qry(x<<1,l,mid,L,R);
    else return m+1;
}

#define fio(x) freopen(x ".in","r",stdin);freopen(x ".out","r",stdout); 使用了 4h+ 发现。

posted @ 2025-01-16 22:58  Jordan_Pan  阅读(34)  评论(0)    收藏  举报