上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 29 下一页
摘要: 题解 可重元素的全排列都是很熟知的东西了 就是 $\frac{n!}{\prod c_{i}!}$其中$c_{i}$是第i种数出现的次数 我们对于每个元素统计一下多少排列里这个数会被统计进去 我们对于一个M,如果a里面大于M的数有k个,那么每个被统计进的元素和这些数都不相同,被统计进的元素需要出现在 阅读全文
posted @ 2018-06-11 18:26 sigongzi 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题解 想出了一个神奇的技巧 我们先把串反过来(因为我们需要起始位置的值而不是终止位置的值),每个点维护一下 fail树上子树里的点,作为正数绝对值最大的两个数,作为负数绝对值最大的两个数 我们发现这个两两相乘的最大值肯定是一个后缀最大值,我们对每个节点求一个最大值存到这个节点的len处理出后缀最大值 阅读全文
posted @ 2018-06-11 16:25 sigongzi 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 题解 k叉哈夫曼树,但是没有了二叉那样的最后一定能合并成一个树根的优秀性质,我们就不断模拟操作看看到了哪一步能用的节点数 // define ivorysi define enter putchar('\n') define space putchar(' ') define fi first de 阅读全文
posted @ 2018-06-11 13:55 sigongzi 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 题解 怎么NOI2015D1……全是一眼秒的sb题……然后我代码全都写跪一遍= = 要是NOI2015是IOI赛制我就可以AK啦(大雾) 代码能力直线下降,NOI2018滚粗预定了啊TAT 我是不是要去开码农题啊QAQ 我们发现大于$\sqrt{N}$的素数只会在每个数里出现至多1个,而小于$\sq 阅读全文
posted @ 2018-06-11 11:38 sigongzi 阅读(325) 评论(1) 推荐(0) 编辑
摘要: 题解 连树剖我都写跪一次,我现在怎么那么老年啊= = 简直滚粗预定了啊。。 我们线段树维护树剖只需要资瓷区间覆盖和区间求和就好了 安装的时候看看自己到根有多少包装了,dep减去这个数量就好 卸载的时候看看子树里有多少包安装了就行 代码 cpp include // define ivorysi de 阅读全文
posted @ 2018-06-11 08:42 sigongzi 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 题解 开始是想两个并查集的 和A相等,和A不相等 如果AB相等就连 A 相等,B相等 B不相等 A不相等 如果AB不相等就连 A不相等,B相等 B相等,A不相等 但是显然不对,因为和A不相等的不一定和B相等 所以我就gg了,后来发现只要把所有相等的先连上然后看看不相等的有没有在同一集合就行 老年选手 阅读全文
posted @ 2018-06-11 08:05 sigongzi 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题解 板子!我相信其实没人来看我的板子!但是为了防止我忘记,我还是要写点什么 我们考虑二分图,为什么二分图就能那么轻松地写出匹配的代码呢?因为匹配只会发生在黑点和白点之间,我们找寻增广路,必然是一黑一白一黑一白这么走 然而,一般图由于有了奇环,事情变得不妙了啊 奇环上的所有点,可以是……任意的奇偶性 阅读全文
posted @ 2018-06-10 21:57 sigongzi 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 今天头非常疼,躲在家里没去机房 反正都要颓废了,然后花了一上午研究了一下这道神题怎么做…… 题解 首先我们发现,如果我们设$dis[i]$为从$0$节点走到$i$节点的距离 那么题目中给出的所有关系都变成了$n$个变量中两两的大小关系式 这像什么,差分约束哇(听说这是noip知识点?可我noip的时 阅读全文
posted @ 2018-06-10 15:07 sigongzi 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 题解 一写过一交A的一道数据结构水题 我们发现大于C可以转化为这条路径上有多少个在某天之前开始调查的情报员,离线全部读入,变成树上路径查询某个区间的数出现过多少次,构建一棵根缀的主席树,查询的时候用两边的主席树减掉lca的主席树,然后判断一下lca是否合法 代码 cpp include // def 阅读全文
posted @ 2018-06-09 16:18 sigongzi 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 题解 断环为链,把链复制两份 用set维护一下全是0的区间,然后查找x + n / 2附近的区间,附近各一个过不去,最后弃疗了改为查附近的两个,然后过掉了= = 熟练掌握stl的应用,你值得拥有(雾 代码 cpp include // define ivorysi define enter putc 阅读全文
posted @ 2018-06-09 15:46 sigongzi 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题解 神仙dp啊QAQ 我们发现我们需要枚举一个起点,遍历完它所有的儿子然后向上爬 设$f[i][j]$表示第i个点的子树全部处理完之后到达i深度为j的祖先的兄弟处 我们只需要对叶子节点和只有一个儿子的点特殊讨论,因为所有的向上爬都是从叶子爬的 转移的时候只要枚举从两个儿子里哪个爬上取就好了 设$g 阅读全文
posted @ 2018-06-09 14:41 sigongzi 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 题解 我们要求的其实是这个东西= = $\sum_{i = 1}^{n}\sum_{j = 1}^{n}[(i,j) == 1][(j,k) == 1]$ 然后变一下形 $\sum_{j = 1}^{n}[(j,k) == 1]\sum_{i = 1}^{n}[(i,j) == 1]$ $\sum_ 阅读全文
posted @ 2018-06-09 09:50 sigongzi 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 题解 这个故事告诉们数论函数不要往分式上跑,你推不出来 好久没推式子了这么明显的转化我都忘了= = 首先$A(n) = \frac{1}{n} \sum_{i = 1}^{n} \frac{i n}{gcd(i,n)}$ 然后显然可以把n消掉 $A(n) = \sum_{i = 1}^{n} \fr 阅读全文
posted @ 2018-06-08 22:36 sigongzi 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题解 话说LOJ说我今天宜学数论= =看到小迪学了杜教筛去蹭了一波小迪做的题 标解的杜教筛的函数不懂啊,怎么推的毫无思路= = 所以写了个复杂度稍微高一点的?? 首先,我们发现f是个积性函数,那么我们就有…… $\prod_{i = 1}^{k}f(p_{i}^{a_{i}})$ 我们发现,对于每个 阅读全文
posted @ 2018-06-08 22:15 sigongzi 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 题解 写完上一道就开始写这个,大体上就是代码改了改而已= = 好吧,再推一下式子! $\sum_{i = 1}^{n}i = \sum_{i = 1}^{n}\sum_{d | i}\phi(d) = \sum_{i = 1}^{n}\sum_{d = 1}^{\lfloor \frac{n}{i} 阅读全文
posted @ 2018-06-08 17:39 sigongzi 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 题解 求积性函数的前缀和?杜教筛! 这不给一发杜教筛入门必备之博客= = https://blog.csdn.net/skywalkert/article/details/50500009 好了,然后我试着在这里推导一下式子 我们利用一个卷积就是 $\mu I = e$ 写成熟悉的形式就是 $[n 阅读全文
posted @ 2018-06-08 17:03 sigongzi 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 题解 跟随小迪学姐的步伐,学习一下数论 小迪学姐太巨了! 这道题的式子很好推嘛 $\sum_{i = 1}^{n} \sum_{j = 1}^{n} \sum_{d|\phi(i),\phi(j)} \phi(d) [gcd(\frac{\phi(i)}{d},\frac{\phi(j)}{d}) 阅读全文
posted @ 2018-06-08 15:30 sigongzi 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题解 考虑到状态数比较复杂,其实我们需要轮廓线dp…… 我们设置$f[x][y][S][h][k]$为考虑到第(x,y)个格子,S是轮廓线上的匹配状态,是二进制,如果一位是1表示这一位匹配第一行匹配到第一行的末尾了,然后h是前一个格子匹配到第一行第h列,k是前一个格子匹配到第二行第k列,转移数组用k 阅读全文
posted @ 2018-06-08 15:22 sigongzi 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题解 我们发现第一种操作肯定不可取,每个节点里它最近的点是它最长出现过的后缀,发现这就是AC自动机的fail节点,根据fail的关系这会是一棵树,而一个单词的前一个序号最大的后缀必定是它的父亲 然后我们考虑怎么获得最小值,x是肯定要加上的,我们让每次减掉的y最小 一个错误的想法:按照儿子个数分类,建 阅读全文
posted @ 2018-06-08 15:21 sigongzi 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题解 最大异或和,明显是个线性基 然而还有那么多路径……那就树分治,反正点数看起来很少,就是为了让人乘上一个60的常数嘛 把一个树的点分树记录下来,然后看看询问的两个点彼此相同的最后一个父亲是谁,把这个询问挂在这个点上,计算就暴力搜索这棵树里每一个节点到重心的线性基就行了,最后再用60的常数把两个线 阅读全文
posted @ 2018-06-08 15:19 sigongzi 阅读(163) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 29 下一页