随笔分类 -  动态规划

摘要:Description 你有一个随机数生成器,它会以一定的概率生成[0,2^N 1]中的数,每一个数的概率是由序列A给定的,Pi=Ai/sum(Ai) 现在有一个初始为0的数X,每一轮随机生成一个数v,将X变成X xor v 求X变成0~2^N 1的期望轮数 答案对998244353取模 N0, $ 阅读全文
posted @ 2019-06-12 22:06 BAJim_H 阅读(653) 评论(0) 推荐(0)
摘要:Description 定义线图为把无向图的边变成点,新图中点与点之间右边当且仅当它们对应的边在原图中有公共点,这样得到的图。 定义弦图为不存在一个长度大于3的纯环,纯环的定义是在环上任取两个不相邻的点,它们之间都没有边,也就是不存在没有弦的环的无向图。 现在给出一棵n个点的树,你可以在上面添加任意 阅读全文
posted @ 2019-05-29 20:09 BAJim_H 阅读(623) 评论(2) 推荐(0)
摘要:Description 给出一棵n个点的树,现在有m种颜色,要给每个节点染色,相邻节点不能同色。 另外有k条限制,形如x号点不能为颜色y 同一节点有可能有多条限制。 求方案数对998244353取模的结果。 n define fo(i,a,b) for(int i=a;i=b; i) define 阅读全文
posted @ 2019-05-29 11:56 BAJim_H 阅读(740) 评论(0) 推荐(0)
摘要:Description Solution 首先它的限制关系是一个树形图 首先考虑如果它是一个外向树该怎么做。 这是很简单的,我们相当于每个子树的根都是子树中最早出现的点,概率是容易计算的。 设DP状态$f[i][j]$为做到以i为根的子树,子树中权值W的和为j且满足限制关系的概率。 然后就可以直接利 阅读全文
posted @ 2019-05-21 20:20 BAJim_H 阅读(203) 评论(0) 推荐(0)
摘要:Description N,Mx_2 \end{array}\right. $$ 容易发现它还是个凸函数,相当于在原来的凸函数两边斜率绝对值大于c的部分修改掉。 这样我们只需要支持区间加、区间赋值为一次函数,以及查找某个斜率 线段树维护即可。 时间复杂度$O(n\log n)$ Code cpp i 阅读全文
posted @ 2019-03-21 21:54 BAJim_H 阅读(237) 评论(0) 推荐(0)