【Hall 定理】【转换】P3488 [POI2009] LYZ-Ice Skates

假设我们选取的是某些人去匹配鞋子。

满足条件就是所有情况下,人数小于或等于鞋子。正难则反,考虑最坏情况让人数大于鞋子。

从简单的开始,假设选了 i,ji,j 两个人,他们的鞋子码数都不一样。那么有:

k(d+ii+1)+k(d+jj+1)<ai+ajk(d+i-i+1) + k(d+j-j+1) < a_i + a_j

化简,将不变的放在左边:

2kd<(aik)+(ajk)2kd < (a_i - k) + (a_j - k)

尝试一般化,设能穿码数 ii,且没有选第 ii 个人的数量为 xx,选取的集合为 SS,则左边为 kxkx

kx<iSaikkx < \sum\limits_{i\in S} a_i-k

即让左边更小,右边更大。左边更小是要 xx 更小,也就是要取连续的一段区间,使 x=dx = d。那右边就是取最大子段和了。

posted @ 2024-07-22 08:41  cjrqwq  阅读(8)  评论(0)    收藏  举报  来源