上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 33 下一页
摘要: 题目大意:给定一棵有$n$个点的树,$m$个询问树上距离为$k$的点对是否存在。 题解:离线,点分治 卡点:读入边的时候不知道我在干什么。。。 C++ Code: 阅读全文
posted @ 2018-10-11 11:33 Memory_of_winter 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一棵树,随机选两个点,求它们之间路径长度是$3$的倍数的概率 题解:点分治,求出当前状态的重心,然后求出经过重心的答案,接着分治每棵子树。注意考虑重复计算的情况 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-10 19:32 Memory_of_winter 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给出一棵树,每次随机等概率选择一未染黑的点,将它及其子树染黑。问期望多少次操作可以将树全部染黑。 题解:一个点被染黑的可能是它的父亲或它自己中的一个被染黑,所以它给出贡献的概率是它深度的倒数,累加即可 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-10 15:32 Memory_of_winter 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你$n$个数$q_i$,令$F_j=\sum\limits_{i<j}\dfrac{q_iq_j}{(i−j)^2}−\sum\limits_{i>j}\dfrac{q_iq_j}{(i−j)^2}$,令$E_i=\dfrac{F_i}{q_i}$。求$E_i$ 题解: $$E_j=\s 阅读全文
posted @ 2018-10-10 15:10 Memory_of_winter 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一个数列,三个操作: 题解:线段树,发现对于取模操作,若模数大于被膜数,则不会有影响,可以通过维护最大值跳过,若是对有影响,那么这个数字一定至少会变成原来的一半,所以一个数最多更改$\log_2$次,可以承受。 卡点:我$\max$函数写成$\min$ C++ Code: 阅读全文
posted @ 2018-10-09 20:20 Memory_of_winter 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一张$n$个点$m$条边的图,要求对于每条边求出包含这条边的最小生成树 题解:先求出最小生成树,发现加入一条不在最小生成树上的边,就会出现一个环,那么把这个环上除这条边外权值最大的一条边删去就是对于这条边的最小生成树,可以倍增求 卡点:倍增结尾处理错 C++ Code: 阅读全文
posted @ 2018-10-09 19:15 Memory_of_winter 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给出一个数列$S(S_i\leqslant100)$,有$q$个操作,每种操作是把区间$[l,r]$中等于$x$的数改成$y$,输出答案 题解:线段树,每个节点存这段区间的每个值会变成什么,最后扫一遍就好了 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-09 12:38 Memory_of_winter 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 题目大意:问字符集大小为$k$,长度为$L$的字符串,且没有长度超过$1$的回文段的个数。规定第$s(若为0则无限制)$位为$w$。 题解:懒得写了,根据是否有限制分类讨论 卡点:中途有个地方忘记取模 C++ Code: 阅读全文
posted @ 2018-10-08 17:17 Memory_of_winter 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一颗$n$个节点的树,$k$次旅行,问每一条被走过的次数。 题解:树上差分,$num_x$表示连接$x$和$fa_x$的边被走过的次数,一条路径$u->v$,$num_u+1,num_v+1,num_{LCA(u,v)}-2$,最后求个子树和就行了 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-08 13:46 Memory_of_winter 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 题目大意:构造一个序列$S$,有$m$条限制,每条为$l\;r\;q$,表示$\&_{i=l}^r S_i=q$ 题解:每条限制就把$[l,r]$内的数或上$q$,最后判断就行了 卡点:我又写了一课$O(n^2\log_2n)$的线段树。。。 C++ Code: 阅读全文
posted @ 2018-10-08 13:13 Memory_of_winter 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一串长度为$n$的序列,要求把这个序列变成$abab\dots abab$的形式,且$a\not =b$,问最少要改几个数字 题解:求出奇偶位上前二多的数字就判断一下就行了 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-07 17:58 Memory_of_winter 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题目大意:$n$个点,每个点有一个值$w_i$。$m$个条件,每个条件给出$x,y$,要求$w_x\not =w_y$。选择最少的点,使其值加$1$后,所有条件成立(数据保证有解)。 题解:对于每个条件,若$(w_x+1)\bmod h=w_y$,连上$x->y$;若$(w_y+1)\bmod h= 阅读全文
posted @ 2018-10-05 20:24 Memory_of_winter 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一个$1\sim n$的序列,若可以用$3n$次交换产生,则输出$\text{Petr}$,若可以用$7n$次交换则输出$\text{Um_nik}$。 题解:交换一次会导致逆序对的奇偶性变化,于是若逆序对的奇偶性和$3n$(即$n$)相同输出$\text{Petr}$,否则输出$\te 阅读全文
posted @ 2018-10-05 19:15 Memory_of_winter 阅读(220) 评论(0) 推荐(0) 编辑
摘要: A: 题目大意:给你一个数字串,每个数字只可以用一次,求最多可以组成多少个电话号码(可以相同),电话号码第一个数字为$8$,且长度为$11$ 题解:限制为$8$的个数和总长度,直接求 卡点:无 C++ Code: B: 题目大意:给你一个数$x$,求两个数$a,b$,使得$a+b=n$,且价值和最大 阅读全文
posted @ 2018-10-05 15:00 Memory_of_winter 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有一个$n$个点$m$条边的有向图,起点$S$,要求你添加最少的边使得$S$可以到达所有点 题解:缩点,答案就是没有入边的强连通分量个数,注意,如果起点$S$所在的强连通块没有入边则不计入答案 卡点:无 C++ Code: 阅读全文
posted @ 2018-10-05 14:30 Memory_of_winter 阅读(177) 评论(0) 推荐(0) 编辑
上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 33 下一页