首页 > TAG信息列表 > 环上

[NOI2013]快餐店

[NOI2013]快餐店] 传送门 题意分析 n个建筑由n条道路相连,可以得出给出的图实际上就是一棵基环树。 快餐点要设在距最远顾客最近的位置 并且可以设置在道路上,实际上就是找树上最长链中点,也就是树的直径,类似于求树的直径。 解题思路 ​ 首先考虑如何将此问题转化为求树的直径

Atcoder ABC 266 EF

E 题目大意 有一个游戏,你可以玩\(n\)次,每次投一个骰子,若数字为\(X\),则: 若这把是第\(n\)把,那么你的分数为\(X\),游戏结束 否则,你可以选择继续游戏,或者立刻停止游戏,分数为\(X\),游戏结束 求最大的得分期望。 \(n \le 100\)(???) Solution 设\(f(d,x)\)为第\(d\)次游戏,骰子数为\(x\)

P1399 [NOI2013] 快餐店 题解

题目大意 求一棵基环树的重心。即一个点,使得树上到其距离最长的点到其的距离最短。注意,这个点不一定是一个节点,可以在树上的任意位置。输出树上到其距离最长的点到其的距离。 或者说求基环树最短的直径?(大雾 解题思路 显然,这颗基环树的直径只有两种情况:经过环和不经过环。 如果不经

关于排列的问题小结

CF-GR20题解 一场全是排列问题的CF ICPC21SH B 关于排列的容斥计数题 CF-R803div2E-2300 先考虑如何判断一个确定的排列置换是否合法: 1.对于排列置换的环,考虑每次交换的影响,发现就是把一个点去掉;那么对于每一个数,只要判断它在环上的后面的第一个比它大的数即可。 2.进一步可以发现

「IOI2017」西默夫 / Simurgh

称御道状态是 \(1\),其余为 \(0\)。\(a_p\) 表示 \(p\) 这条边是不是御道。 如果允许我们问一个森林的话,问题会简单很多: 我们可以直接枚举一端 \(i\),每次二分出最小的 \(r\) 使得一端在 \(i\),一端在 \([i + 1, r]\) 的所有边存在 \(1\) 边的,这样就找到了一条 \((i, r)\) 的御道,然后

题解 CF19E Fairy

link 很久以前做的,今天又不会了!!!!写下题解。 分类讨论一下吧。 如果原图是二分图,删去任意一条边即可。 否则,原图存在奇环。答案即为图中所以奇环的交。一个很常见的 trick 是先跑出一棵 树。考虑,如果加上这条边形成了奇环,那么不在这个环上的树边都不行。如果加上这条边形成了偶环,乍

LGP1407口胡

这题还有点儿意思,记录一下。 题意:给定一个二分图完备匹配,询问去掉一条匹配边后是否仍存在完备匹配。询问互相不影响。 寻找二分图最大匹配时使用的匈牙利算法就是不断寻找增广路,然后将边权取反。正确性是取反后一定还是一个匹配,且最大匹配只增不减。 那么我们可以下一个结论:如果完

LGP5049题解

无内鬼,来个线性做法 发现是一个 sb 贪心,只需要保证下一个去的节点尽量小即可。 问题分为三个阶段:在一颗“子树”内,在环上,在别的“子树”内。(环上每个节点挂着一堆子树) 首先肯定从 \(1\) 开始搜。尽量走小的地方。 走到环上后需要决定走哪个方向,这个很容易。 在环上某个位置需要判

2021.12 做题笔记

因为 DP 太差,教练丢给我们一堆联赛难度的 DP 题做,然后完全不会,可能我的 DP 就是普及组水平。。 Luogu P2470 [SCOI2007]压缩 为数不多的自己做出来的紫题 \(f_i\) 表示到 \(i\) 的答案,转移枚举上一个 M 的位置,然后发现还要算一个 \(g_{l,r}\) 表示从 \(l\) 到 \(r\)(\(l\) 左面有一

Codeforces Round #759

最近开始补cf题,尽可能补完所有div2+edu,fft啥的可能不会补( A 模拟不解释 B 发现这个过程相当于你每次找到一个数在原序列中左边第一个大于它的数,问跳几次能跳到max 然后我就写了个单调栈( 被教育了一波发现倒着for一for就好了,wssb C 首先正负分开考虑 不难发现如果强制回原点,则每次

基环树

基环树的题一般比较明显(好吧,有的与有的也不太明显),有且仅有一个环,一般体现在条件给出 \(n\) 个点 \(n\) 条边 如果是无向图,直接打标机进行 \(dfs\) 即可找到环,个人喜欢开个栈记录当前点,然后找到打过标记的点直接弹栈知道栈内的这个点,于是环就被拎出来了。 如果是有向图,内向树与外向

[luogu P5129] 不可思议的迷宫 题解

题目链接:P5129 不可思议的迷宫 题面 题目描述 给定一棵基环树,等概率在基环树上选取一个起点,再等概率选取终点(起点和终点可以重合),确定起点和终点后,如果会等概率选取起点到终点的一条简单路径,即不重复经过任何一条边。 求路径长度的期望,对 \(19260817\) 取模。 输入格式 第一行一个

基环树乱写

如果你像本节的标题一样,恭喜你成功学会了这个东西洗洗睡吧 珍爱生命,建议远离 基本 基环树是一种图结构,直观表现为树套环 狭义的基环树指树上两个点之间多一条边,整个图中有且仅有一个环 广义上指边数和点数相同的图,即一个基环树森林 特别的,对于有向图,每个点有且仅一条出边的为内向

CF1108F MST Unification

题面 给定一个有n个点,m条边的无向连通图,每条边有边权。 定义一次操作为:选择一条图中的边,并将其权值+1。 试求最小的操作次数,使得操作后的图的最小生成树是唯一的。 题解 首先我们要认识到一点,我们只可能对可行边进行操作,因为必须边不影响最小生成树的唯一性,不可能在最小生成树上的

CF891B-Gluttony【构造】

正题 题目链接:https://www.luogu.com.cn/problem/CF891B 题目大意 给出\(n\)个数字互不相同的一个序列\(a\),求它的一个排列\(b\),使得选出任意一个\(1\sim n\)的下标真子集,都有\(a\)的对应下标和不等于\(b\)的对应下标和。 \(1\leq n\leq 22,0\leq a_i\leq 10^9\) 解题思路 首先

CF891B-Gluttony【构造】

正题 题目链接:https://www.luogu.com.cn/problem/CF891B 题目大意 给出 n n n个数字互不相同的一个序列 a a

Editorial of Global Round 15 D Array Differentiation

因为n比较小,我们可以考虑时间复杂度较大的算法,我们可以构造一个环(假设环上有m个点),环上的点满足 s 1 a 1

CF835F Roads in the Kingdom

Link Description 给定一棵基环树,现在可以删去环上的一条边,最小化删变后树的直径。求直径大小。 Solution 把环上的边删完后,就得到一个森林。删去环上的边对森林里树的直径是无影响的,这是直径的第一种情况。 第二种情况就是两段非环路径加上一段环上路径,记 \(c_i\) 表示 \(i\) 到

AT2143 [ARC062D] AtCoDeerくんとグラフ色塗り / Painting Graphs with AtCoDeer

【题意】   【分析】 首先,我们考虑以下情况: 1.一个不在环上的边,贡献为k 2.一个只在一个环上的边,贡献按照polya定理去计算$\frac{\sum \limits_{i=0}^{l-1} k^{\gcd(i, l)}}$ 3.一个在多个环相连整体上的边(环贴贴了),那么可以按照插板法来计算贡献 $\binom{l+k-1}{k-1}$ 这里至于问

[ICPC2019 WF]Hobson's Trains

传送 这道题虽然思维难度不高,但是我却收获颇多。 这个图的模型就是好多棵基环内向树,然后求对于每一个点\(u\),在\(k\)步之内能走到\(u\)的点的数量(包括点\(u\)自己)。 首先自然是分成两部分:树上的点和环上的点。 对于树上的每一个点,无非是把他的的\(k\)级之内的祖先都加1,这个用树状

一致性哈希算法

一致性hash算法是定义一个2^32长度的环,环的顺时针方向依次是0 1 2 ... 2^32-1,服务器节点分布于环上,可以通过一个散列函数对每一个服务器节点求hash值,hash值对应环上的位置,这些服务器节点组成集群,当需要把数据保存到集群时,可以用同一个散列函数对数据求hash值,如果hash值正好对于一

Codeforces Round #609 (Div. 1)

Codeforces Round #609 (Div. 1) A 先保留前 \(k\) 位写出当前的答案。如果合法直接输,如果不合法把前 \(k\) 位数字 \(+1\) 重新写 B 将网格图黑白染色,答案是 \(cnt=min(num(black),num(white))\)。可通过二分图匹配或手动构造证明 C 考虑分成两步,1.把这些数移到相邻位置 2.消除逆

HackerRank Definite Random Walks 题解

HackerRank Definite Random Walks 题解 传送门 首先图的样子是一个根向树+一条反向的返祖边。 对于环上的点,所有经过环上的边到达它的点都可以规约到只走一边环上的边。 钦定一个环上的点为root。 然后处理出每一个深度的点的数量。 这样可以算出所有经过一段环上的边的贡献。(大

P3629 [APIO2010] DFS + 树形 DP

题意 传送门 P3629 [APIO2010]巡逻 题解 当 K = 0 K=0 K=0,遍历整棵树,每条边必然被递归依次,回溯一次,故路线总长度为

[ICPC2019 WF]Hobson's Trains

传送 这道题虽然思维难度不高,但是我却收获颇多。 这个图的模型就是好多棵基环内向树,然后求对于每一个点\(u\),在\(k\)步之内能走到\(u\)的点的数量(包括点\(u\)自己)。 首先自然是分成两部分:树上的点和环上的点。 对于树上的每一个点,无非是把他的的\(k\)级之内的祖先都加1,这个用树