P5812 [IOI2019] 天桥
摘要:
优化建图,首先分几种情况讨论。假设当前的桥 。起点和终点是 。 第一种情况:$S \leq l #define int long long using namespace std; const int maxn=1e5+10,maxm=4e6+10,inf=1e18; str
8.30 模拟赛 光和影(dream) 题解
摘要:
概括:大分类讨论。 首先有个重要结论,无论是三种操作中的哪一种,他的左儿子仍然在他的左子树内,右儿子在右子树内。同时,旋转一个点一次,对他更上面的点的深度没有影响。 以此,我们预处理出一个 表示将 splay 到根上,对左子树和右子树深度的影响,由于上面的结论,这个
luogu P7352 炉心融解
摘要:
记 为所有人以当前信息推断出 这种情况是否合法, 表示假如真实情况是 ,应该有哪些人喊出来了。 每一轮中,通过告诉你的 条消息可以推断出哪些集合不合法,将其 赋为 ,然后根据新的 ,有些人可能可以据此喊了,所以根据新的 $f_S
ABC313
摘要:
## [D - Odd or Even](https://atcoder.jp/contests/abc313/tasks/abc313_d) ## 假设 到 的和是偶数。那么通过 次询问可以得到所有数是 还是 。如果将 到 $A_{
IOI 热病
摘要:
好。 最关键的观察:第一个人确定走的方向后,所有人走的方向都只有一种可能使他感染。 那现在就有一个显然的做法:枚举第一个人走的方向,所有人之间如果能相遇,就连边,用类似最短路的方法来求。 现在边数是 的,但是这种东西有个套路,就是对于任意一点,一个方向上的边只建一条最近的边。 边的种类有
我们有相遇的时间(time)
摘要:
终于还是写到这个了。。。 ## 题意: ## 一个平面直角坐标系上,给你六个点,分别是 。你随时可以做两种操作,第一种是选两个点的编号,在这两个点之间得到一条直线,这条直线的编号为上个直线编号加一,第二种选两条有交直线
「GYM103470G」Paimon's Tree
摘要:
树上区间dp。 由于dp转移跟左右端点有关,考虑怎样转移端点。 左右端点只有被染色了才能被转移,那就多记个两维,表示左右端点是否已经被染色就好了。 表示左右端点 , 当前已经染了 个点,左右端点染色四种情况的路径长度。 ```cpp #i
CF1610F Mashtali a Space Oddysey
摘要:
撞了个题,还做过。 将所有奇度给他建个边权为 的虚边和对应的虚点,图上一定存在欧拉回路,给欧拉回路定向,记录这个边的入边权值为 还是为 ,优先走上一次走的边权。这样跑的话,会将边权抵消,可以取到答案上界,即相连边权为奇数的点数。 ```cpp #include using na
UOJ312 【UNR #2】梦中的题面
摘要:
好题。 容斥后插板,要计算的形如 的样子。这个 可能会很大,不能直接设进状态,但是我们 需要 计算组合数。解决方法是用范德蒙德卷积 $$ \sum_{i=0}^{k}{\binom{n}{i}\binom{m}{k-i}} = \b
QOJ875 Arrange The Piranhas
摘要:
题意:大小为 的棋盘上有一些棋子,一次可以选择一个空的位置,将左边第一个棋子往该位置拉一格,右边第一个往这拉一格,操作完这个位置也必须是空的(也就是左右至少得有一格的空隙),问能不能把所有棋子变成目标状态。 将棋子位置的前缀和 求出,每次操作相当于将一个 $s_