摘要:
题意:n头牛,m个牧场,每头牛都有自己喜欢的牧场,然后问一牛一牧场的分配方案总数。题解:状态压缩dp,dp[i][state]为前i头牛,用了state的牧场时的总数。但是直接开n*2^m会爆空间,但是每头牛都只与前面一头牛相关,所以可以辗转一下,只记录两维即可。View Code 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 int dp[2][(1<<20)+2]; 6 int main() 7 { 8 int n,m 阅读全文