<题解>[IOI2019]景点划分】的更多相关文章

题目传送门(luogu) 题目传送门(loj) 这个题对我来说可以算是超出了我的能力范围 被学长拿来教我做构造,构造题真简单,构造题真是人,构造题真能手切... 首先对于本题,必须要知道dfs树这东西,就是在一个图中得到一个树, 简单来说就是吧所有的边分成树边和非树边,所有的n-1个树边会把所有点连接成一颗树 这个在实现上就是一个dfs就好了 这里有一个小小的性质,在一个dfs树中,所有的非树边一定不是横叉边 意思就是所有的边连接的两个点一定是祖先后代关系 那么这个题就可以做了 你会发现这a,b…
[题解]整数划分 [51nod1201] 整数划分 V2 [51nod1259] 传送门:整数划分 \([51nod1201]\) 整数划分 \(V2\) \([51nod1259]\)** [题目描述] \([T1]\) 将整数 \(N\) 划分为若干个不同整数的和,有多少种不同的划分方式,答案对 \(10^9 + 7\) 取模. 例:\(n=6\),\(n\) 可划分为 \(\{6\} \{1,5\} \{2,4\} \{1,2,3\}\) 共 \(4\) 种. [样例] 样例输入: 6 样…
题面 解析 首先,因为是不同的数字, 可以从小到大依次枚举加上每一个数字的贡献,再枚举每个数. 然而这样会T掉... 考虑到\(n\)只有\(50000\), 当分成的数最多时,设最大的数为\(m\), 则\(1+2+3...+m<=n\), 所以最多只会分成315个数(\(m<316\)). 那么设\(f[j][i]\)表示把\(j\)分成\(i\)个数的方案数. 依次枚举加上的数\(i\), 那么这个\(i\)要么作为单独的一块加上去, 要么就分成\(i\)块给之前的贡献过的每个数加1.…
不妨设$a\le b\le c$,那么相当于要找到两个大小至少为$a$和$b$的连通块(连通块可以通过删除度最小的点变小) 以一个点为根建出dfs树并对以下情况分类讨论: 1.存在一个节点满足$\max(\max_{son}(sz[son]),n-sz[k]+s)<a$(其中$sz[k]$表示k子树大小,$s$表示删除$k$后仍然与根联通的点个数),那么必然无解(两个连通块必然都需要经过$k$) 2.不存在,那么必然有解,且可以通过以下方法构造: (1)找到任意一个满足$sz[k]\ge a$且…
目录 0 引言 0.1 所谓构造题 0.2 重点是动机 (motivation) 1 实践出真知 1.1 「CSP-S 2021」「洛谷 P7915」回文 1.1.1 题目大意 1.1.2 解题过程 1.2 「ARC 110F」Esoswap 1.2.1 题目大意 1.2.2 解题过程 1.3 「多校联训」子集 1.3.1 题目大意 1.3.2 解题过程 1.4 小结 2 拼盘得正解 2.1 「CF 1450C2」Errich-Tac-Toe (Hard Version) 2.1.1 题目大意…
Kth number Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 9213    Accepted Submission(s): 2868 Problem Description Give you a sequence and ask you the kth big number of a inteval.   Input The…
Aragorn's Story Description Our protagonist is the handsome human prince Aragorn comes from The Lord of the Rings. One day Aragorn finds a lot of enemies who want to invade his kingdom. As Aragorn knows, the enemy has N camps out of his kingdom and M…
我觉得几乎就是一道最小生成树模板啊... 题解里许多大佬都说选第n-k+1条边,可我觉得要这么讲比较容易理解 (虚边为能选的边,实边为最小生成树) 令n=5,k=2,(1,3)<(1,2)<(3,4)<(4,5)(PS:(4,5)<(2,5),图画错了,见谅) 然后开始分部落(被同一个三角形套住的为一个部落的): (1) 这样肯定不为最优部落划分,因为他们的距离为(1,3) (2) 同理,这样也不行 (3) 这样当然是不行的 所以,我们得出了这样一个结论: 要尽量选大边 所以小边要…
洛谷P4047 [JSOI2010]部落划分题解 题目描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落之间则经常发生争斗.只是,这一切都成为谜团了——聪聪根本就不知道部落究竟是如何分布的. 不过好消息是,聪聪得到了一份荒岛的地图.地图上标注了N个野人居住的地点(可以看作是平面上的坐标).我们知道,同一个部落的野人总是生活在附近.我们把两个部落的距离,定义为部落中距离最近的那两个居住点的距离.聪聪还获…
作者:zifeiy 标签:状压DP,子集划分DP 题目链接:https://codeforces.com/contest/1238/problem/E 题目大意: 给你一个长度为 \(n(n \le 10^5)\) 的字符串s和 \(m(m \le 20)\) ,这个字符串由前 \(m\) 个小写字母组成. 现在你要找一个前 \(m\) 个字符的一个排列p,在这个排列p的基础上生成字符串s,并计算总代价. 代价的计算过程是: 比如我现在已经生成了字符串s的前i个字符 \(s_{1..i}\) ,…