摘要:
题目链接 "戳我" $Solution$ 看到"最大值最小",就知道应该要二分 二分之后,对于每个$mid$,只要计算小于$mid$的边,然后在剩下的图中判断有无欧拉回路 但这个图是一个混合图. 先对每条无向边随意的定向,统计每个点入度和出度的差,如果有一个点的入度和出度的奇偶性不同,那么就肯定无解 阅读全文
摘要:
题目链接 "戳我" $Solution$ 首先往返$n$次等价于走$2n$次。 将 $a_n 2,b_n 2$; 那么我们直接按原图构图,然后: $(S,a_1,a_n),(S,b_1,b_n),(a_2,T,a_n),(b_2,T,b_n)$ 但直接判断最大流是否等于$a_n+b_n$是不对的。因 阅读全文
摘要:
题目链接 "戳我" $Solution$ 我们考虑每增加一个$1$会对答案有什么影响: $$E((x+1)^3) E(x^3)=E(3x^2+3x+1)=3E(x^2)+3E(x)+1$$ 所以我们只需要维护$E(x^2)$和$E(x)$ 令: $x1[i]=E(x)$ $x2[i]=E(x^2)$ 阅读全文
摘要:
题目链接 "戳我" $Solution$ 我们首先转换一下问题: 假设我们进行了k轮得到了所有种类的邮票 则所花费用为: $$(1+2+5+...+k)=\frac{(1+k) k}{2}=\frac{k+k^2}{2}$$ 所以我们现在要求的就是$\frac{k+k^2}{2}$的期望 因为$E( 阅读全文
摘要:
题目链接 "戳我" $Solution$ 两个变量,emm...不好搞啊。 于是我们可以按照$A$排序。然后动态加边,因为$A$是越来越大,所以不需要管他,只要使得$1$~$n$的路径中$B$最大值最小。这用LCT维护生成树就好了,模板题。每次加边后满足$1$~$n$有路径的时候将 此时最大的$B$ 阅读全文
摘要:
在终端依次输入这三条命令即可 阅读全文
摘要:
题目链接 "戳我" $Solution$ 这道题实际上是维护一个最小生成树,因为正的搞不好搞,所以反着搞会比较好,现将没有没删掉的边留下来生成一颗最小生成树,再加边就好了,现在$LCT$ 来看看怎么维护 对于一个最小生成树,加一条边后会是一个环,在环上删掉一个最大的边,还是一个最小生成树。所以我们对 阅读全文
摘要:
题目链接 "戳我" $Solution$ $LCT$裸题 $Connect$操作,执行$link(u,v)$ $Destroy$操作,执行$cut(u,v)$ $Query$操作,用findroot(y)==findroot(v)判联通 和 "这题" 几乎一样 $Code$ cpp include 阅读全文
摘要:
题目链接 "戳我" $Solution$ 不详细讲了。说一下大致过程,毕竟很裸 对于开战:$cut(p,q)$ 战争结束:$link(p[x],q[x])$ 询问:用$findroot(p)==findroot(q)$判一下联通就好了 $Code$ cpp include define rg reg 阅读全文
摘要:
题目链接 "戳我" 题目出处 菩萨蛮·南园满地堆轻絮 &nbs 阅读全文
摘要:
题目链接 "戳我" $Solution$ 其实我们可以发现这题等价于让你求: 用$1$~$n$的数组成一个完全二叉树使之满足小根堆性质的方案数 于是我们可以考虑$dp$ 假设我们现在在$i$点,$i$的子节点个数为$s[i]$(包括自己) 则: $dp[i]=C(s[i] 1,s[i 2]) f[i 阅读全文
摘要:
题目链接 "戳我" $Solution$ 网络流是什么?可以吃吗? 这道题明显不需要网络流啊,直接暴力$bfs$即可 令f[x][y][k]表示在$x,y$时还剩下$k$步的最小花费 然后向四周扩展即可 $Code$ cpp include define rg register define fil 阅读全文
摘要:
题目链接 "戳我" $Description$ 给你一个$n m$的网格,以及网格上的两个格子$A,B$.每个格子有一个高度.每次操作可以选择一个格子(不能是$A$或$B$)并将它的高度增加$1$.你希望在$A,B$间不存在任何一条不上升路径.求最少操作次数。 $Solution$ 这道题很容易看出 阅读全文
摘要:
$Description$ 给你一个序列,每次询问一个区间,求其所有子区间的最小值之和 $Solution$ 这里要用莫队算法 首先令$val$数组为原序列 我们考虑怎么由一个区间$[l,r]$到$[l,r+1]$ 我们发现新增加的区间为: $$[l,r+1],[l+1,r+1],[l+2,r+1] 阅读全文