摘要:
注意先检查一下电脑上有没有ncurses库! #include <bits/stdc++.h> #include <ncurses.h> #include <unistd.h> using namespace std; random_device rd; mt19937 rng(rd()); int 阅读全文
摘要:
CF949E。 妙妙题。 为了方便叙述,称取出的 card 集合为 。 我们的做法基于以下几点观察: 为不重集。 证明:若存在两个 则 与 一定不劣。 对于 $\forall k \ge 0, 2^k \in S \Lon 阅读全文
摘要:
CF930E。 很水的 2900,连我都想出来了。 第一步,离散化,把所有区间离散化了,因为我们只关心每个硬币对每个区间的包含关系,并不在乎它具体是哪个。 先打暴力:设 表示考虑到了第 个段,上个与当前硬币不同面的硬币的位置在哪个段里,还有当前段最后一个硬 阅读全文
摘要:
好吧,我现在得解决这个问题。题目是说,给定一个字符串s,首尾相连,所以子串可以跨过结尾。然后,S是所有不同的子串的集合。对于每个子串t,f(t)是它在s中出现的次数,g(t)是它的长度。要计算总和,sum(f(t)^2 * g(t)),对所有不同的t来说。 首先,我得理解题目。比如,假设s是abc, 阅读全文
摘要:
CF446E 很好的一道 EGF 入门题。 我们发现每一操作一次,答案增加多少, 就减小多少。 于是答案即为 ,其中 为在 位子上操作的次数。 显然我们只需算出后面这坨的期望就行了,前面是 阅读全文
摘要:
LibreOJ-3614 Luogu-P9040 很好的题。 先不考虑区间,先想 的情况。 考虑 dp, 表示考虑 的答案。 则容易得到: \[f_i=\max\left\{f_{i-1}, f_{i-k}+s_i-s_{i-k}\right 阅读全文
摘要:
CodeForces 871E 很好的一道构造题。 一个性质 我们记这 个点分别为 。 首先,题目并没有指定树的根,比较难受,为了方便,我们取 为根。 于是我们就意外得到了每个点的深度,也就是到 的距离 \(\left\{d_ 阅读全文
摘要:
她是谁(What)? 超级树状数组(Super Fenwick 或 Super BIT)是一种维护线性数据,支持区间修改,区间查询的数据结构,其中要求运算符满足结合律,可逆性。(例如异或,加法,乘法或非奇异的矩阵乘法) 正如其名字,超级树状数组的本质是树状数组,因此,她也继承了树状数组的所有优点: 阅读全文
摘要:
Problem - 848E - Codeforces 首先,由于整个图是对称的,所以我们将其沿直径分为两半,在算一半答案时把每一段的贡献平方再相加即可。(因为对面也有一段相同长度的也要计入贡献) 现在我们的问题转化为了对于一个长为 的环,你可以给一个点连出一个线头(即在原图中连向对面的 阅读全文