摘要:
题目大意: 有c种不同的巧克力,每种无限个,意味着取出每种的几率每次为1/c。现在你需要取n次。然后将统计每种取出来的巧克力的数量。若为偶数则舍去,否则留下一个。问最后留下m个的概率是多少。 题目分析: 由于取出每种巧克力的概率始终相同,。不妨假设取出奇数个的巧克力正好是1~m,m+1则取出偶数次, 阅读全文
摘要:
题目分析: 构造f[nk][r]表示题目中要求的东西。容易发现递推公式f[nk][r]=f[nk-1][r]+f[nk-1][(r-1)%k].矩阵快速幂可以优化,时间复杂度O(k^3logn)。 代码: 阅读全文
摘要:
题目分析 首先考虑到最小值最大,二分答案。假设答案为k,显然这满足单调性。如果某个k使得这个情况下选不出。那么比k大的一定也选不出,所以二分答案。 接着我们可以贪心,当我们确认了k以后,一定会优先选费用最少的,那么可以按费用维护主席树,在树上查询最小的l升果汁。 题目代码暂时没拿到 阅读全文
摘要:
题目大意: 求相邻元素互质的排列个数。 题目分析: 由于互质只与质因数有关,所以我们对于质因数种类相同的数合并为一类,特殊的,1,17,19,23是一类,因为没有数与他们不互质。 那么我们做各个位进制不同的状压DP。转移就是在末尾添加哪个数。 代码: 阅读全文
摘要:
题目分析: 容易想到生成函数的构造方法。 令g(n)表示n个点的无向图个数,f(n)表示n个点的无向连通图的个数。式子是显然的。 容易发现式子是卷积的形式,写出生成函数,然后多项式求逆后多项式乘法即可。 代码: 阅读全文
摘要:
题目分析: 由于乘二的收获很大,所以我们可以证明乘的数一定是同一个,接着排序后依次选取,判断一下即可。 题目代码: 阅读全文
摘要:
题目大意:构造一个点数为dn+1的无向图,无向图中点的度数的集合等于给出的集合d。 题目分析: 当n=0的时候,一个点即可。 当n=1的时候,答案是一个包含d1+1个点的完全图。 否则将d2~dn-1的度数减去d1,然后构造d1个点和dn-dn-1个点,将前d1个点与任何一个点都连上边,这样就有了d 阅读全文
摘要:
题目大意:给出异或差分序列,要你任意排列使得原序列递增。 题目分析: 我们在使得异或结果递增的过程中总能找到一个值使得它的最高位的1对应当前值的0。那么我们贪心的选择最高位最低的一个任意值使得它满足这个关系。 这是因为当我们现在异或的值的最高位为k时,它前面有关的位全部都是1,而后面的位不受影响,异 阅读全文
摘要:
BJOI的题目感觉有点难写 题目分析: 首先推一波结论。接下来的一切都在模3意义下 现在我们将二进制位重组,不难发现的是2^0≡1,2^1≡2,2^2≡1,2^3≡2....所以我们考虑这样的式子 2*a+b≡0 mod 3 其中a+b为某个区间的1的个数,令它为tot。试着带几个值看看。 2*1+ 阅读全文
摘要:
题目大意: 求满足比之前的任何数小的有A个,比之后的任何数小的有B个的长度为n的排列个数。 题目分析: 首先写出递推式,设s(n,k)表示长度为n的排列,比之前的数小的数有k个。 我们假设新加入的数为1,那么s(n,k)=s(n-1,k-1)+(n-1)*s(n,k)。 这个式子是第一类斯特林数的递 阅读全文