posted @ 2018-03-29 23:22 SirKnight 阅读(115) 评论(1) 推荐(0)
摘要:
先将式子变形一下,变成长度乘上最小循环节个数,发现如果n大于等于7或等于1或4时不会出现比全取一种字母的价值大的情况,暴力枚举循环节,注意剪枝就能过,考试时写蠢了。。。 阅读全文
摘要:
二分出能免费跳过去的青蛙的个数,检查时青蛙就依次跳到能跳的石头上,剩下的取代价最小的一次跳过去。 阅读全文
posted @ 2018-03-29 23:10 SirKnight 阅读(129) 评论(0) 推荐(0)
摘要:
在ac自动机上dp,dpij0表示到第i位ac自动机上第j个节点前面严格小于n的方案数,转移时能到0至9,1是与n相等的方案数,转移到比后一位小的0,和等于后一位的1,如果当前碰到在集合中的串了,就不转移。为了防止前导0,每一位从根向外++,最后统计答案就是dpl-1i0和dpl-1i1的总和(不包 阅读全文
posted @ 2018-03-29 22:53 SirKnight 阅读(105) 评论(0) 推荐(0)
摘要:
分开考虑每一位,出现0的次数就是小于这一位前面的数的个数乘上后面位数的二次幂加上如果这一位是1就是后面位数的二次幂否则是小于等于后面的数的个数,出现1的次数减一下就行,考虑长度为len时的情况,为每一位的期望之和,只有这一位出现奇数个1时才会为1,发现是一个二项式定理(x(1的概率)+y(0的概率) 阅读全文
posted @ 2018-03-28 23:27 SirKnight 阅读(208) 评论(0) 推荐(0)
摘要:
根据时间向图中加边,将每个点都拆成每一天时的情况,当天可以向下一天滞留无限的人,每一天的起点和终点都分别与源汇连容量为正无穷的边,当最大流大于等于人数时就输出,无解用并查集维护即可。当前弧优化真的快好多。 阅读全文
posted @ 2018-03-28 22:50 SirKnight 阅读(97) 评论(0) 推荐(0)
摘要:
树状数组套线段树,一个维护x一个维护y,要动态开点否则会炸空间。正解是cdq分治,懒得写了就被卡常了。。。 阅读全文
posted @ 2018-03-28 22:21 SirKnight 阅读(124) 评论(1) 推荐(0)
摘要:
二分答案,每次将小于等于当前值的边加入二分图中,看最大流能否大于等于n-k+1,反着来是不行的,因为如果最大流大于k-1,不代表只能向上二分,可以不取最大流。 阅读全文
posted @ 2018-03-28 22:18 SirKnight 阅读(141) 评论(0) 推荐(0)
摘要:
发现一次交换后,对于一个区间,单点有len(区间长度)-1/len的概率还是它自己,有1/len乘1/len1的概率变成另一个区间的任何一个数,线段树维护加法和乘法即可。 阅读全文
posted @ 2018-03-28 22:15 SirKnight 阅读(94) 评论(0) 推荐(0)
摘要:
dp[i]表示前i个贼全部被抓住的方案数,先离散化,转移时可以将左端点减1到右端点的dp值累加到右端点的dp值上,并把后面所有的dp值都乘2,这显然可以用线段树维护,没有用的也对答案有乘2的贡献。 阅读全文
posted @ 2018-03-28 21:46 SirKnight 阅读(163) 评论(0) 推荐(0)