上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 题面 "Bzoj" 题解 考虑容斥原理,所有人都有特产的方案数等于: 至少零个人没有特产$ $至少一个人没有特产$+$至少两个人有特产$ ...$ 接着考虑其中一种情况怎么求(假设现在至少有$i$个人没有特产): 对于每种特产,我们分开考虑,假设当前特产有$a[j]$个,则我们可以看作是将$a[j] 阅读全文
posted @ 2019-01-28 09:16 water_mi 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 题面(权限题) 题解 一道概率$dp$,可以设$f[i][j]$表示第$i$次操作后,标号为$j$的小球的期望个数,那么有: $$ \begin{aligned} &f "i][j]=(1 \frac 1m)f[i 1][j]+\frac1mf[i 1][j 1" \\ &f[i][0]=(1 \f 阅读全文
posted @ 2019-01-26 16:30 water_mi 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 前言 前置技能:矩阵乘法,矩阵快速幂 当然你不会的话也不会点进来(滑稽) 今天上午的$HNOI$模拟赛中,$T1$是这么一道题目: 有一个长度为$n$的环,执行$s$次操作,在一次操作中, 对于每一个数,它变为它左边的数乘上$l$以及它本身以及它右边的数乘上$r$的和。 求最后每一个位置上的数是多少 阅读全文
posted @ 2019-01-26 15:34 water_mi 阅读(1413) 评论(2) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 最暴力的方法是直接判两个点之间的路径最小值是否$\geq k$,用$Dijkstra$可以做到该算法最快效率,但是空间复杂度始终是$O(n^2)$的,会$MLE$,其实仔细观察一下,会发现对于一个满足某个$k$的路径$dis$,它一定会满足$\forall k'\ 阅读全文
posted @ 2019-01-24 10:20 water_mi 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 考虑带权并查集,设$f[i]$表示$i$的父亲($\forall f[i] 1.如果$f[x 1]=f[y]$ 这个时候直接判断$sum[y] sum[x 1]$是否等于$z$就行了。 2.如果$f[x 1]\not= f[y]$ 将$f[y]$的$f$定为$f[ 阅读全文
posted @ 2019-01-23 12:32 water_mi 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 ~~大力分块~~,分块大小$\sqrt n$,对于每一个元素记一下跳多少次能跳到下一个块,以及跳到下一个块的哪个位置,修改的时候时候只需要更新元素所在的那一块即可,然后询问也是$\sqrt n$的模拟。 cpp include include include in 阅读全文
posted @ 2019-01-22 16:18 water_mi 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 点分治套路走一波,考虑$calc$函数怎么写,存一下每条路径在$\%3$意义下的路径总数,假设为$tot[i]$即$\equiv i(mod\ 3)$,这时当前的贡献就是$tot[0]^2+2\times tot[1]\times tot[2]$。 cpp inc 阅读全文
posted @ 2019-01-22 16:06 water_mi 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 显然,如果让你查询整个数列的最大异或和,建一颗$01Trie$,每给定一个$p$,按照二进制后反方向跳就行了(比如当前二进制位为$1$,则往$0$跳,反之亦反)。 但是现在要支持在最末尾插入和区间查询,将这颗$Trie$可持久化一下就好了(可持久化$Trie$敲板 阅读全文
posted @ 2019-01-22 15:38 water_mi 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 题面 有多组数据: "Poj" 无多组数据: "洛谷" 题解 点分治板子题,$calc$的时候搞一个$two\ pointers$扫一下统计答案就行了。 cpp include include include include using std::min; using std::max; using 阅读全文
posted @ 2019-01-22 15:20 water_mi 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题面 "Bzoj" "洛谷" 题解 考虑莫队算法,首先对询问进行分块(分块大小为$sqrt(n)$),对于同一个块内的询问,按照左端点为第一关键字,右端点为第二关键字排序。我们统计这个区间内相同的颜色有多少个,假设某种颜色$i$有$j$个,则贡献就是$j\times(j 1)$,最后记得化成既约分数 阅读全文
posted @ 2019-01-22 15:02 water_mi 阅读(202) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页