摘要: 题目链接:眼红的同学 题干信息很简单,看到数据量之后就不简单了。在数据量小的时候可以使用双层循环暴力的方法来求答案。显然对于这道题而言O(n^2)是完全过不去的。 前置知识: 使用树状数组求逆序对 会归并排序等分治算法。 如果想要了解跟多信息,可以自行在搜索引擎搜索有关CDQ分治的练习题。 考虑使用 阅读全文
posted @ 2024-03-18 09:08 Macw 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 题目跳转 思路: 题目问最多可以获得的额外伤害,其实就是询问在这些技能中,如何怎样选取一个最优的发动技能顺序使得攻击加成最大。我们可以把每一个技能看作成一个图的顶点,把每一个攻击加成看作图的边,权制为\(Ei,j\)。由于\(Ei,j\)与\(Ej,i\)相等,则可以将这个图视为无向图。 可以样样例 阅读全文
posted @ 2024-03-18 09:05 Macw 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 题目跳转 思路:这道题可能跟博弈论有一点关系,没有学习过博弈论做起来应该问题也不大。思考一个问题,先手必胜的前提是什么? 有关更多的内容可以前往:浅谈有向无环图 先手必胜的前提是,在任何一种局面下,先手都有至少一种操作可以使后手处于必败的局面。 若先手进行任何操作后,后手都可以选择必胜的操作,则先手 阅读全文
posted @ 2024-03-18 09:03 Macw 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 题目跳转 思路:本题可以使用动态规划或递归的方式来实现,本质上是一道01背包的变型题。假设一共有\(n\)名员工,每一位员工的技能水平用\(a[i]\)表示。要使得两个部门的员工技能总和之差最小,意思就是尽可能地将一个部门的技能之和”凑“到\(\sum\limits_{i=1}^{n}a[i] \t 阅读全文
posted @ 2024-03-18 09:01 Macw 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 【题解】P2627 [USACO11OPEN] Mowing the Lawn G 题目跳转 数据量比较大,暴力肯定是不行的。只能考虑用动态规划的方式来做。 这道题有许多dp设计的思路,这里提供两个: 方法一:普通状态设计 定义\(dp[i][1/0]\)表示截止遍历到第\(i\)个元素时,选择第\ 阅读全文
posted @ 2024-03-18 08:57 Macw 阅读(9) 评论(0) 推荐(0) 编辑