如果你这题被卡常了……

P3349 [ZJOI2016] 小星星

具体是哪两层啊…… ```cpp for(int i=head[x];i;i=e[i].nxt) { int y=e[i].to; if(vis[y])continue; dp(y); for(int k=1;k<=n;k++) { ll sum=0; for(int j=1;j<=n;j++)sum+=f[y][k]*(g[k][j]&del[k]&del[j]); f[x][j]*=sum; } } ``` j和k吗?
by Rorschach_XR @ 2019-07-23 15:52:28


没事了……fread+register卡过去了hhh
by Rorschach_XR @ 2019-07-23 16:14:51


```cpp for(int k=s;k;k-=k&-k){ f[x][r[k&-k]]=1; for(int i=0;i<G[x].size();i++){ int y=G[x][i]; if(y==p)continue; long long t=0; for(int j=s;j;j-=j&-j)if(e[r[k&-k]+1][r[j&-j]+1])t+=f[y][r[j&-j]]; f[x][r[k&-k]]*=t; } } ``` --TLE ```cpp for(int k=s;k;k-=k&-k)f[x][r[k&-k]]=1; for(int i=0;i<G[x].size();i++){ int y=G[x][i]; if(y==p)continue; for(int k=s;k;k-=k&-k){ long long t=0; for(int j=s;j;j-=j&-j)if(e[r[k&-k]+1][r[j&-j]+1])t+=f[y][r[j&-j]]; f[x][r[k&-k]]*=t; } } ``` --AC
by pengyule @ 2021-12-25 15:33:13


|