任意一个环的权值,我们都可以看成两个有边相连的结点i、j的直接距离加上i、j间不包含边(边i->j)的最短路径。 求最短路径我们第一个想到的就是Dijkstra算法。 而Dijkstra所求的是一个点到所有点的最短距离。 用Dijkstra所求的i、j的最短距离一定是i、j的直接距离(如果i,j连通 ...
分类:
其他好文 时间:
2018-03-01 21:54:25
阅读次数:
142
题目 有N个节点,标号从1到N,这N个节点一开始相互不连通。第i个节点的初始权值为a[i],接下来有如下一些操作: U x y: 加一条边,连接第x个节点和第y个节点 A1 x v: 将第x个节点的权值增加v A2 x v: 将第x个节点所在的连通块的所有节点的权值都增加v A3 v: 将所有节点的 ...
分类:
其他好文 时间:
2018-03-01 21:44:32
阅读次数:
183
博弈论+dp 依旧是博弈论的壳子,但问的是最大值,所以要dp 设 dp[i][j] 表示该取 i 号硬币,上一次取了 j 个的先手能取的最大值, 因为每次从小到大枚举复杂度太高,所以我们要从 dp[i][i 1] 转移,每次新加两个状态即可 cpp include include include i ...
分类:
其他好文 时间:
2018-02-28 23:03:41
阅读次数:
163
平常来说什么++v.begin()和 v.end()都是很习惯的事,但是对于++v.end()会出现什么情况呢? 来一个简单的代码 在VS2017调试中出现错误 说明end()迭代器是不可加的。 而以下是我遇到的情况复现: include include using namespace std; i ...
分类:
编程语言 时间:
2018-02-28 21:32:59
阅读次数:
167
博弈论+区间dp 有博弈论吗?大约只有一个博弈论的壳子 设 dp[i][j] 表示区间 i ~ j 先手最多能取多少, 它可以由 i ~ j 1 与 i + 1 ~ j 来转移, 等于上述两个区间中后手的最大值 + 选的数 cpp include include include include us ...
分类:
其他好文 时间:
2018-02-28 20:12:34
阅读次数:
162
题目背景 @Yumis 出题人在这里哦~ 题目描述 Yumis最近在玩炉石传说。 在炉石传说中脏牧有一张一费卡片(一费就是使用要消耗1点法力水晶),叫做疯狂药水,这个的效果是将一个敌方场上攻击小于等于2的随从拉到自己的战场内。 还有一张四费卡片叫做暗影狂乱,这个的效果是将一个敌方场上攻击小于等于3的 ...
分类:
其他好文 时间:
2018-02-27 23:25:07
阅读次数:
204
F Yes or No Time limit : 2sec / Memory limit : 256MB Score : 2000 points Problem Statement You are participating in a quiz with N + M questions and Ye ...
分类:
其他好文 时间:
2018-02-27 17:43:42
阅读次数:
178
Description 魔术师的桌子上有n个杯子排成一行,编号为1,2,…,n,其中某些杯子底下藏有一个小球,如果你准确地猜出是哪些杯子,你就可以获得奖品。花费c_ij元,魔术师就会告诉你杯子i,i+1,…,j底下藏有球的总数的奇偶性。采取最优的询问策略,你至少需要花费多少元,才能保证猜出哪些杯子底 ...
分类:
其他好文 时间:
2018-02-26 23:11:26
阅读次数:
157
描述华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在11分制和21分制下,双方的比赛结果(截至记录末尾)。比赛规则和实际比赛规则相同, 在11分制下比分为10:11时还要继续比赛,直到分数差距达到2分;同理21分制下比分为20:21的时候也还要继续比赛。比如现在有这么一份记 ...
分类:
其他好文 时间:
2018-02-26 20:40:32
阅读次数:
175