模拟测试20191003

好像一年没写题解了

这次考试好像从开考10min后就没有分了?

T2用错误的题意和错误的代码得出了样例,偷税然鹅爆零了

T3只会打暴力,试着反演然而第一不会证复杂度第二反演已经快忘干净了

T1:天空龙

%%%kx

T2:巨神兵

题意大概就是求构成DAG的方案数

既然是DAG理所当然的想到分层

设$ dp[i][j] $表示当前点集为i,最后一层为j的方案数

令$ in(i,j) $表示j中的点都和i中的点有边,$ has[i] $表示能直接到i的点,$ cnt[i] $表示i中1的个数

那么$ dp[i|t][t]=\sum \limits_{in(j,t),i\cap t== \varnothing }dp[i][j]*\prod \limits_{p\epsilon t}(2^{cnt[has[p]\cap j]}-1)*(2^{cnt[has[p]\cap (i \wedge j)]})   $

猜你喜欢

转载自www.cnblogs.com/mikufun-hzoi-cpp/p/11619117.html