正题 题目链接:https://www.luogu.com.cn/problem/P7518 题目大意 给出\(n\)个点的一棵树,每个点上有不大于\(m\)的数字. 然后给出一个长度为\(c\)的各个位数不同的序列,每次询问一条路径上找到一个最大的\(k\)使得该序列的存在\(1\sim k\)的子序列. \(1\leq n,q\leq 2\times 10^5,1\leq c\leq m\leq 5\times 10^4,1\leq w_i\leq m\) 解题思路 传统的思想,路径分为向上…
正题 题目链接:https://www.luogu.com.cn/problem/P7514 题目大意 给出\(n\)个卡牌有\(a_i/b_i\),开始都是\(a_i\)朝上,将不超过\(m\)张卡牌变为\(b_i\)面朝上,使得朝上的数字中最大值减去最小值最小. \(3\leq n\leq 10^6,1\leq m<n,1\leq a_i,b_i\leq 10^9\) 解题思路 虽然数据比较水,但是题目也是一道比较水的贪心题. 先离散化然后考虑暴力点的想法.枚举最大值和最小值\(l,r\),…
题意 [省选联考 2020 A 卷] 组合数问题 想法 自己在多项式和数论方面还是太差了,最近写这些题都没多少思路,看完题解才会 首先有这两个柿子 \(k*\dbinom{n}{k} = n*\dbinom{n - 1}{k - 1}\) \((1 + x) ^ n = \sum_{i = 0}^{n}\dbinom{n}{i}x^i\) 然后对于题目中所要求的多项式\(f(x)\)我们自然把他拆开,对于一个单个\(k\)对答案贡献 \(\sum_{i = 1}^{m}a_i * (k^i *…
很巧妙的一个构造. 我是没有想到的. 自己的思维能力可能还是不足. 考虑先满足\(b\)对\(a\)的限制,把\(a\)的第一行和第一列设\(0\),推出这个\(a\). 接下来考虑对这个\(a\),矩阵进行一些行列加的操作满足\(\leq 1e6\)的性质. 考虑操作做时,奇偶分开加减这样的操作保证\(b\)的限制. 借用一下其他大佬的图. 如下代码因为被卡常了,所以在跑\(BellmanFord\)时没有跑完,所以其实并不保证正确性.只是能过数据而已,好无奈. [省选联考 2021 A 卷]…
luoguP6623 [省选联考 2020 A 卷] 树(trie树) Luogu 题外话: ...想不出来啥好说的了. 我认识的人基本都切这道题了. 就我只会10分暴力. 我是傻逼. 题解时间 先不想用什么维护,拆分成如下操作: 插入,合并,全局异或和,全局加一. 全局加一咋做? Trie树变成从低位到高位记录就好. 全局加一就是直接反转,看到进位(这一位存在1方向节点变成0方向节点)就递归下去继续反转. 然后就没了. #include<bits/stdc++.h> using namesp…
luoguP6620 [省选联考 2020 A 卷] 组合数问题(斯特林数) Luogu 题外话: LN切这题的人比切T1的多. 我都想到了组合意义乱搞也想到可能用斯特林数为啥还是没做出来... 我怕不是除了数据结构啥也不会. 我是傻逼. 题解时间 不弄纯柿子推导,来点阳间的组合意义证明. 首先毫无疑问拆成: $$ \sum_{i=0}^{m} a_{i} \sum_{k=0}^{n} k^{i} \cdot x^{k} \cdot \binom{n}{k} $$ 然后考虑如何求 $$ \sum…
luoguP6624 [省选联考 2020 A 卷] 作业题(莫比乌斯反演,矩阵树定理) Luogu 题外话: Day2一题没切. 我是傻逼. 题解时间 某种意义上说刻在DNA里的柿子,大概是很多人学莫反做的第一题的套路. $ \phi \cdot 1 = id $ . 然后直接转化: \[\begin{aligned} & \sum_{T} ( ( \sum w_{e_i} ) * gcd( w_{e_i} ) ) \\ = & \sum_{T} ( ( \sum w_{e_i} ) *…
主席树 Description 给定一个长度为 N 颜色序列A,有M个询问:每次询问一个区间里是否有一种颜色的数量超过了区间的一半,并指出是哪种颜色. Input 输入文件第一行有两个整数:N和C 输入文件第二行有N个1到C之间的整数,表示颜色序列A 输入文件第三行一个整数M,表示询问个数:接下来M行每行两个整数A和B,表示询问的区间是[A, B]. Output 输出M行.对于第i个询问,如果存在一个颜色超过区间长度的一半,那么输出 "yes x",x表示颜色编号:否则输出一行 &q…
正题 题目链接:https://www.luogu.com.cn/problem/P7515 题目大意 有一个\(n*m\)的矩形\(A\),然后给出一个\((n-1)*(m-1)\)的矩形\(B\)满足 \[B_{i,j}=A_{i,j}+A_{i+1,j}+A_{i,j+1}+A_{i+1,j+1} \] 求能否构造合法矩形\(A\)使得\(0\leq a_{i,j}\leq 10^6\) \(1\leq T\leq 10,1\leq n,m\leq 300,0\leq b_{i,j}\le…
这是一篇极其简单连像我这样省三参加不了省选的蒟蒻都能看懂的题解 前置知识: 倍增LCA  二分 栈 题意 PS:这是一篇完全面向初学者的题解,会非常细,大佬请无视 题目传送门 没有思路的时候, 我们往往可以从简单的情况下手, 比如一条链 我们记Pi为第i个需要搜集的宝石, S为起点, T为终点. 不妨先假设我们有一条链, 每个节点指向下一个要搜集的宝石(向上), 也就p1指向向上最近的一个p2, p2指向p3(为什么是最近,读者可自行思考) 这个时候S是第一个要搜集的宝石, 我们考虑从S一路沿链…