- 博客(5)
- 收藏
- 关注
原创 loj 2540. 「PKUWC2018」随机算法
题意:传送门题解:算出所有合法方案数然后算期望。 f[i][S]f[i][S]f[i][S]表示已经用了iii个点,当前最大独立集是SSS,直接转移即可。 code:#include<cstdio>#include<cstdlib>#include<cstring>#include<iostream>#define L...
2018-08-27 16:15:15 534
原创 bzoj 5329: [Sdoi2018]战略游戏
题意:n个点m条边,每次给出一个点集,可以删掉一个非点集中的点,问有多少删法使得存在两个点集中的点不连通。题解:建出圆方树的虚树,显然删去上面的圆点是合法的。 直接搞就好了。 code:#include<vector>#include<cstdio>#include<cstdlib>#include<cstring>#...
2018-08-16 14:36:55 322
原创 codeforces 1017G. The Tree
题意:给一颗一开始全是白点的树,支持三个操作: 1:将某一个点改成白点,假如已经是白点,则对儿子进行该操作。 2:将一颗子树改成白色 3:询问某个点的颜色题解:显然是在要操作的点上打上标记。 关键是要设计一种有用的标记,比赛时sb,没有想到可以用后缀和…… 一开始整棵树都是-1,对于一操作,就在该点上+1,那么一个点上是黑点当前仅当它到根的路径的最大后缀和&gt;=0。 2...
2018-08-09 14:57:25 519
原创 codeforces 666E. Forensic Examination
题意:给一些模式串,每次询问询问串的子串在[l,r][l,r][l,r]中的哪个模式串出现最多。题解:好久久久久久久久久久久久久没写字符串相关,调的简直心态爆炸。 直接建出广义sam,每次就相当于询问一个子树的众数。 用可持久化线段树合并即可。 具体细节见代码,线段树合并很久没写写错几次。 code:#include<vector>#include<cs...
2018-08-07 08:54:45 303
原创 hdu 6315 Naive Operations
题意:给一个排列bbb,要求维护一个数列支持: 1:区间加 2:求∑ri=l⌊aibi⌋∑i=lr⌊aibi⌋\sum_{i=l}^{r} \lfloor \frac{a_i}{b_i}\rfloor题解:考虑ans的上界,即每次add都是1,n,ans=nlognans=nlognans=nlogn 也就是说,只有nlognnlognnlogn此操作是有效的。 所以线段树暴力...
2018-08-06 15:41:27 177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人