摘要:
定义sum(i)表示i在二进制下1的个数 求∏ni=1sum(i) 暴力非常sb显然可以随便写,但是显然也是会T 于是我们换个思路 我们设tot表示sum(i)=x的i有多少个,于是答案就是xtot 我们枚举x就行了,x显然不 阅读全文
posted @ 2019-01-01 21:45
asuldb
阅读(127)
评论(0)
推荐(0)
摘要:
发现好像写了一个洛谷上最快的分块 这道题曾经一度感觉非常不可做,因为LCT的标签以及没有什么思路的分块 但是自从yy出来一个错误的哈希冲突分块之后(修改的时候挂掉了),就发现这道题不就是我曾经的那个错误的思路吗 这种要往后不断的跳的题目,我们暴力往后跳的话肯定是会爆炸的,因为这样的复杂度完全 阅读全文
posted @ 2019-01-01 21:44
asuldb
阅读(112)
评论(0)
推荐(0)
摘要:
好水啊 但是我傻啊 我们设dp[i][j]=\sum_{t=0}^{∞}\binom{ik}{j+tk} 根据组合数万年不变的递推式\binom{n}{m}=\binom{n 1}{m 1}+\binom{n 1}{m} 我们有$dp[i][j]=dp[i 1][j]+dp[i 1][(j 阅读全文
posted @ 2019-01-01 21:44
asuldb
阅读(133)
评论(0)
推荐(0)
摘要:
非常巧妙的dp顺序 这道题如果按照最正常的顺序来dp的话,显然是没有办法做的,后效性太大了 所以我们可以巧妙的改变dp的顺序 我们注意到一个位置(i,j)要被打到的话就必须将其右上方的所有砖块都打掉,于是我们我们设dp[i][j][k]表示打到了(i,j)这个位置一共打了$k 阅读全文
posted @ 2019-01-01 21:44
asuldb
阅读(134)
评论(0)
推荐(0)
摘要:
挺妙的一道期望题 首先经过一番简单的思考就会发现对于线段树上的一个叶子节点x,深度为deep[x],那么走到这个节点的概率就是2^{deep[x]} 我们设val[x]表示叶节点x到根经过的所有节点的权值和为val[x] 于是最后的答案就是 $$qwq \sum_{i=1}^ 阅读全文
posted @ 2019-01-01 21:43
asuldb
阅读(215)
评论(0)
推荐(0)
摘要:
树上的路径怎么能没有树剖 显然, 次小生成树和最小生成树只在一条边上有差距 ,于是我们就可以枚举这一条边,将所有边加入最小生成树,之后再来从这些并不是那么小的生成树中找到那个最小的 我们往最小生成树里加入一条边一定会在这条边的两个端点之间形成一个环, 为了让维持树的结构,我们要断开环上的一条边,而为 阅读全文
posted @ 2019-01-01 21:43
asuldb
阅读(129)
评论(0)
推荐(0)
摘要:
好像随便一卡就最优解了 malao告诉我这道题挺不错的,于是就去写了写 这两个操作很有灵性啊,感觉这么有特点的数大概是需要分块维护的吧 但是并没有什么区间查询,只是在最后输出整个序列 于是我们就直接用线段树维护 设置两个标记tag[0],tag[1],分别表示对应区间的最小值和最大值 初始值我们 阅读全文
posted @ 2019-01-01 21:42
asuldb
阅读(253)
评论(0)
推荐(0)
摘要:
递推版的数位dp 绝对的暴力美学 我们设dp[l][i][j][0/1][0/1][0/1]表示到了第l位,这一位上选择的数是i,l 1位选择的数是j,第一个0/1代表4没有/有出现过,第二个0/1代表8没有/有出现过,第三个0/1代表连续三位没有/有出现过 阅读全文
posted @ 2019-01-01 21:42
asuldb
阅读(187)
评论(0)
推荐(0)
摘要:
巧妙思路题 有一个重要的思想就是把大于某一个数的数都变成1,小于这个数的都变成0,这个只有0和1的序列就很好处理了 由于我们只需要在最后求出一个位置上是什么数就可以了,所以我们没有必要去精确算出来这一位上是什么数 显然是可以二分的 我们二分出来一个答案,我们按照上述的方法处理序列,之 阅读全文
posted @ 2019-01-01 21:41
asuldb
阅读(158)
评论(0)
推荐(0)
摘要:
开始复习字符串了 第一步肯定得是hash 首先理性分析一波不可能出现长度为奇数的反回文串,对称轴位置取反之后肯定和原来不相等了 我们可以枚举所有回文串的对称中心,之后我们发现这个样子是具有单调性de 于是我们就利用hash来判断 将原来的串取反之后在反转,判断在对称中心左右两边二分的长度是否 阅读全文
posted @ 2019-01-01 21:41
asuldb
阅读(191)
评论(0)
推荐(0)