摘要: Description "传送门" 大致就是给定等式$a_{1}x_{1} + a_{2}x_{2} + a_{3}x_{3} \dots + a_{n}x_{n}= B$, 现在给定$\{a\}$,$B$的取值范围$[B_{Min}, B_{Max}]$, 求B的取值范围内有多少个B使$\{x\} 阅读全文
posted @ 2018-10-15 15:45 Qrsikno 阅读(185) 评论(0) 推荐(0) 编辑
摘要: Description "传送门" 给定n个数, m个询问, 求$[l, r]$内出现次数为偶数的数字异或和. n,m <! more Solution 考虑出现次数为偶数的怎么求: 直接用全部的异或和异或上出现的元素的异或和. 第一部分我们采用前缀异或和来处理. 第二部分我们用树状数组来维护. 考 阅读全文
posted @ 2018-10-15 15:42 Qrsikno 阅读(172) 评论(0) 推荐(0) 编辑
摘要: Description ​ 给定$n$个点的树, 每条边的权值为0/1, 求满足路径上的0与1的个数相等.并且路径上存在一点, 它到起点与终点的路径上0与1的个数相等.求路径条数. n <! more Solution 一看到这题是统计树上路径的问题, 果断大力点分治. 考虑没有路径上存在的特殊点怎 阅读全文
posted @ 2018-10-15 15:41 Qrsikno 阅读(180) 评论(0) 推荐(0) 编辑
摘要: Description "传送门" 维护一个数列, 有以下操作: 1. 对[l,r]同时加上x 2. 把[l,r]开根后下取整. 3. 查询[l,r]之和 n,m $\leq$$ 100000, $$a_i,x \leq 10^5$ <! more Solution 考虑一个简易的线段树,直接对一个 阅读全文
posted @ 2018-10-15 15:39 Qrsikno 阅读(243) 评论(0) 推荐(0) 编辑
摘要: Description "传送门" 求$N$的排列中有多少个波动数列. 波动数列是指对于数列中的每一个数,他两边的数必须严格小于或大于自己. $$ n \leq 4200, Mod \leq 1e9 $$ <! more Solution 首先我们必须要搞清楚3个性质 First: 在一个波动数列中 阅读全文
posted @ 2018-10-15 15:36 Qrsikno 阅读(134) 评论(0) 推荐(0) 编辑
摘要: Description "传送门" 给你一个n个点的树,边权为1. 对于每个点u, 求:$\sum_{i = 1}^{n} distance(u, i)^{k}$ $ n \leq 50000, k \leq 150 $ <! more Solution 咱们化一下式子: $\sum_{i = 1} 阅读全文
posted @ 2018-10-15 15:33 Qrsikno 阅读(256) 评论(4) 推荐(0) 编辑
摘要: Description "Transmission Gate" 给你一个长度为 的排列 ,定义一段子区间是好的,当且仅当这个子区间内的值构成了连续的一段。例如对于排列$\{1,3,2\}$,$[1,1],[2,2],[3,3],[2,3],[1,3]$是好的区间。 共 次询问,每次询问 ,`R` 求 阅读全文
posted @ 2018-10-15 15:29 Qrsikno 阅读(601) 评论(2) 推荐(0) 编辑
摘要: Codeforces 916E 简要题解Description Description 有一棵 个点的树,每个节点上有一个权值wi,最开始根为1号点.现在有3种类型的操作: 1 root, 表示将根设为root. 2 u v x, 设u, v的最近公共祖先为p, 将p的子树中的所有点的权值加上x. 阅读全文
posted @ 2018-10-12 20:52 Qrsikno 阅读(682) 评论(0) 推荐(0) 编辑
摘要: Description ​ 给定一个长度为n的区间,询问前k大的区间和,区间长度$\in [L, R]$。 $ n, k using namespace std; define rep(i, a, b) for(int i = (a), i _end_ = (b); i = i _end_; i) 阅读全文
posted @ 2018-09-30 17:28 Qrsikno 阅读(147) 评论(0) 推荐(0) 编辑
摘要: BZOJ4571 Description "Transmission Gate" 给定n个数, m次询问, 每次询问[l,r]范围内的数加上x后异或b的最大值, x, b给出. $$n,m using namespace std; define rep(i, a, b) for(int i = (a 阅读全文
posted @ 2018-09-22 14:17 Qrsikno 阅读(142) 评论(0) 推荐(0) 编辑