bzoj3622已经没有什么好怕的啦(1)

题意:给出两个序列长度为n,一个匹配使得恰好有k个位置满足第一个序列的数大于第二个序列是合法的,求合法匹配方案数

状态:unsloved

思路:1.明显,泛化问题,是二分图匹配恰好为k的方案数。但并不可做,保留思考,本题的特征在于是全序集,二分图不仅无环而且拓扑序列唯一(无并列),继续

2.难点在于,如何做到无后效性?怎么表示状态?怎么转移,因为不知道当前匹配的情况,即哪些用了哪些还没有用到,所以无法转移,状态压缩?逗我,n是2000,停

3.展开脑洞,各种神奇的想法和状态表示都不可做,比如f[i][j]表示排序后离散化前i个和b序列n个匹配至少匹配数为j的方案数(原因:这种东西,用和不用不知道,很难转移,所以不能单单从两个序列的前i和前j个思考,应该有整体的思想,即思考a的前i个和整个b序列的关系,条件限制很苛刻,恰好为k,所以放宽条件求大于(或小于)等于k方案数再做差)事实上,同样行不通,因为无法转移,停

4.有没有dp之外的方法?好像这种统计方案的只有dp了,同时2000的数据范围我也是醉了,,真是鬼畜啊,当我看完题解时内心一定时崩溃的我坚信,,,

你可能感兴趣的:(bzoj3622已经没有什么好怕的啦(1))