摘要:
一道比较良心的数论题: 枚举VIP的个数 x,求出第一种人个数的范围 [L,R]。 用类似求卡特兰数的方法可以得出答案为 C(n,x)=∑(i=L to R)C(n−x,i)−C(n−x,i+1)。 证明如下:我们可以先取X个VIP客人出来,因为其可以插入任意的位置。 那么我们只要求合法的50,10 阅读全文
摘要:
我们发现我们要维护一个单调栈,我们可以采取以下策略: 我们始终维护其满足单调性。 我们发现一个位置最多可以更新c次。所以我们要C*n次。 但是我们发现这玩意有两头: 我们同时维护2个单调栈就可以了。 我们每次拿进来一个数,如果其小于c/2,将其扔右边,若大于c/2,扔左边就好了。 我们可以证明其小于 阅读全文
摘要:
这是一道很有意思的题。 我们递归统计其出现的位置,就好了。 阅读全文