排序:
默认
按更新时间
按访问量

bzoj 坑&&坑

mobius反演 bzoj 2820  yy的gcd bzoj 3529 sdoi 2014   http://blog.csdn.net/iamzky/article/details/40376189

2016-05-03 10:35:37

阅读数:1281

评论数:0

省队集训Round3 DAY6

T1 题解 这道题应该是可以通过组合数直接计算的,但是我不会数学证明,所以就用了一种简单粗暴的方式。 ans=∑2|iC(n,i)∗C(n,n−i)ans=\sum_{2|i} C(n,i)*C(n,n-i) ans=∑2|iC(n,i)2ans=\sum_{2|i} C(n,i)...

2017-08-20 11:20:15

阅读数:803

评论数:1

省队集训Round3 DAY5

T1 题解 考试的时候考虑了两种方法,但是无法处理n%3=1的部分情况。 首先n%4==3或n%4==0都可以填成一个两个行的矩阵,先填好前四个,然后四个一循环 如果n%3==2或n%3==0,那么先填好前三个,然后三个一循环。 剩下的怎么办呢? 先把前三个填好,然后剩...

2017-08-20 11:19:58

阅读数:318

评论数:0

省队集训Round3 DAY4

T2 题解 讲序列分成三部分,大根堆,缓冲区s,小根堆。 任意时刻保证mid在缓冲区中,并且尽量保证大根堆和小根堆的大小尽量相等。 均摊时间复杂度为O(nlogn/s+n)O(nlogn/s+n) 代码 #include #include #include #include...

2017-08-20 11:19:39

阅读数:334

评论数:0

省队集训Round3 DAY2

T3 题解 首先我们需要计算出M。 N为奇数,中间位不受反转的影响(翻转后每一位异或1),即这一位的位置不会改变,如果反转只可能是0->1。所以我们可以把中间位当成标记位,刚开始编码的时候为0,如果给出的编码中间位为1,那么说明反转过了,需要逆操作后再进行解码,M=2N−1...

2017-08-20 11:19:08

阅读数:205

评论数:0

省队集训Round3 DAY1

T1 题解 大概的思路就是对于每个位置的数,如果他前面比他大的数的个数>=k,那么将他向前移动k位,否则扔到一个数组中。最后对这个数组从小到大排序,然后将数组中的数插入序列中的空位置。 为什么这样做是对的,对于前面比他大的数个数大于等于k的数来说,他们是没有机会自己移动的,...

2017-08-20 11:18:51

阅读数:191

评论数:0

省队集训Round2 DAY7

T2 题解 考虑最暴力的做法,实际上就是枚举选中区间的左右端点,然后用点分判断选出的点构成的合法路径和未选中的点构成的合法路径的大小。 如果再优化一点可以,枚举其中一个端点,另一个端点动态的维护,有点类似动态点分的样子。 这么做的瓶颈在于枚举端点。首先如果右端点如果右移的话,那...

2017-08-20 11:18:30

阅读数:194

评论数:0

省队集训Round2 DAY3

T3 题解 要求每一个时间每条边只能有一个人经过,每个人在到达终点前的任意时刻都不能停止。 那么我们可以二分一个最晚的时间mid,然后建mid层结点,每条有向边x->y从i层的x结点连向i+1层的y结点,容量为1。然后跑最大流如果最后满流,那么说明mid可行,继续减小二分的...

2017-08-20 11:17:58

阅读数:172

评论数:0

省队集训Round2 DAY2

T3 题解 这道题以前做过一个静态的,就是树在开始的时候直接建好,后面直接查询。 这道题的关键是需要看出集合的构建实际上是一颗树结构,每次就是找到所以点的lca然后新加入的点就是lca的一个新的儿子。 对于查询,我们需要对于所有点按照dfs序排序,然后容斥计算答案。一个点的贡献...

2017-08-19 20:36:27

阅读数:191

评论数:0

省队集训Round2 DAY1

T1 题解 对于每个位置都可以暴力的找到最右边的一个点使之后的点再异或异或和下降。 可以维护一颗主席树,外层表示的是起点,内层表示的是以该点为起点的所以终点的合法区间。 每次利用前缀和作差即可。因为是区间操作所以我们标记永久化一下。 代码 #include #include...

2017-08-19 20:36:10

阅读数:234

评论数:0

省队集训DAY6

T1 题解 f[i]表示以字符i结尾的字符串的个数。 那么现在加入一个字符产生的贡献就是∑字符集大小i=0f[i]\sum_{i=0}^{字符集大小}f[i],然后把这个答案赋值给这个字符对应的位置。 考虑这么做会不会产生相同的串?假设acbb,考虑插入第一个b的影响会形成ab...

2017-08-19 20:35:50

阅读数:210

评论数:0

省队集训DAY5

T1 题解 因为是本质不同的字符串,所以考虑什么样的串会产生贡献。 对于一个字符串,我们使他出现的位置尽可能的考前,就是如果这个位置能从第i个串中匹配一定不会在第i+1个串中匹配。这样最先拼凑出的字符串产生贡献1。 如果一个串我们要求本质不同的所有子串,该怎么做?对于原串建立后缀自...

2017-08-19 20:35:30

阅读数:213

评论数:0

省队集训DAY4

T1 题解 将行与列分开考虑,每两个#之间属于一个连通块。 对于每个连通块建立节点,如果只从连通块中选取一个点,那么不会产生相互攻击的棋子。选取第2个点的时候会产生1的贡献,选取第三个点的时候会产生2的贡献。。。。 行列都是如此,那么S->行所代表的连通块,列代表的连通块-&...

2017-08-19 20:35:09

阅读数:187

评论数:0

省队集训DAY3

T1 题解 一共要使用六根木棍,那么分割的方法就两种{1,1,1,3},{1,1,2,2} 那么关键就是要计算2,3的数量。 cnt1[i]表示每种长度的木棍的方案数 cnt2[i]最初表示用不同的木棍拼成长度为i边的方案数,后来表示选出四根木棍构成{2,2}的方案数。 cnt...

2017-08-19 20:34:27

阅读数:200

评论数:0

省队集训DAY2

T1 题解 假设我们枚举数列{ai}中长度为len的区间,那么如何判断两个数列可以匹配呢? 对于提取的数列从小到大排序,{bi}从大到小排序,然后两两配对,如果所有的都满足>=h>=h,那么就可以匹配。应该算是贪心吧。 这样做的时间复杂度是O(n∗len∗loglen)...

2017-08-19 20:34:06

阅读数:202

评论数:0

[校内互测]20170402

T1 题解 因为有限制的商店比较少,且有限制的商店的最高总消费是90000 所以我们考虑对有限制的商店看成是每个组有wi个物品体积是1…wi的多重背包问题。 f[i]表示的是总体积是i的方案数。 需要先枚举每个物品,在倒序枚举总体积,然后枚举当前物品选取的体积。这样子会TLE...

2017-08-19 20:32:25

阅读数:240

评论数:0

FJWC2017 Day3 T2 recollection (后缀自动机+线段树合并)

题目描述 传送门 题目大意: 现在有一棵n个节点的树,点的编号是1到n,1号点是根节点,每条边上有一个字符(用不大于300的非负整数表示),且对于任意的一个点u,e:u→v(u=father[v])e:u→v(u=father[v])上的字符互不相同。 定义r(u)为从节点u到根节点的路...

2017-08-19 20:32:05

阅读数:1021

评论数:0

FJWC2017DAY1题解

T1 矩阵填数 题目描述 传送门 给定一个h∗w的矩阵,矩阵的行编号从上到下依次为1..h,列编号从左到右依次1..w。 在这个矩阵中你需要在每个格子中填入1..m中的某个数。 给这个矩阵填数的时候有一些限制,给定n个该矩阵的子矩阵,以及该子矩阵的最大值v,要求你所填的方案满足...

2017-08-19 20:31:30

阅读数:322

评论数:0

Codeforces 311E. Biologist (最小割)

题目描述传送门题目大意:有n个已经有初值的0/1变量,改变一个变量需要vi的花 费。有m个需求,要求某个集合的变量均为0/1,满足需 求得到wi的收益,对于某些集合不满足时需要付出额外的代价g。求最大收益。题解最小割。 与源点S相连表示选择的值为0,与汇点T相连表示选择的值为1. S-&g...

2017-07-06 20:03:18

阅读数:381

评论数:0

bzoj 4487: [Jsoi2015]染色问题 (容斥原理+组合数学)

题目描述传送门题目大意:棋盘是一个n×m的矩形,分成n行m列共n*m个小方格。现在萌萌和南南有C种不同颜色的颜料,他们希望把棋盘用这些颜料染色,并满足以下规定: 1. 棋盘的每一个小方格既可以染色(染成C种颜色中的一种) ,也可以不染色。 2. 棋盘的每一行至少有一个小方格被染色。 ...

2017-07-06 07:21:41

阅读数:777

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭