摘要: https://ac.nowcoder.com/acm/contest/28513/E 题意: 有一个多边形的垃圾和一个通道,可以任意旋转多边形,问通道的直径最小需要多少才能让多边形通过。 思路: 多边形的形状是没有价值的,所以直接求出这些顶点的凸包。 然后对于凸包的每条边,求出每个点到这条边的最大 阅读全文
posted @ 2022-02-14 20:19 GGood_Name 阅读(83) 评论(0) 推荐(0)
摘要: https://ac.nowcoder.com/acm/contest/23480/I 思路: 将每个时间段取出来从小到大排序,然后求前缀和; 对于每次询问二分查找最小的满足大于等于k的时间段下标,判断前缀和 - 下标差*k是否大于等于p即可 代码: #include <bits/stdc++.h> 阅读全文
posted @ 2022-02-11 23:24 GGood_Name 阅读(66) 评论(0) 推荐(0)
摘要: 前缀和+模拟 思路: 暴力模拟找h 刚开始把 h 设为最大的数,然后将所有比 h 大的数都减去 h 得到的总和与 k 比较,如果不超过 k ,则可以将 h - -, 贪心找到使总和不超过 k 的最小的 h ,然后将比 h 大的数都变为 h ,重复模拟该过程直到所有数相同(即 h 取到最小的数) 所以 阅读全文
posted @ 2022-02-11 00:04 GGood_Name 阅读(56) 评论(0) 推荐(0)
摘要: Make Them Equal 题意: 给定 数组 an:全为1; 给与数组 bn, cn; 将an变为bn后 得到cn点贡献; 你一共有k次操作 求得到最大贡献值; 从 1 中得到数字 i 的最小操作数。要做到这一点,使用 动态规划就足够了 题解: 现在问题本身可以简化为一个背包问题:有 n 个物 阅读全文
posted @ 2022-02-08 20:32 GGood_Name 阅读(69) 评论(0) 推荐(0)
摘要: 题目: 题解: BFS 策略︰我们将当前的局面用字符串保存,例如初始的局面是“012345678”,用广搜的办法来搜索最小的步数。 去重∶广搜深搜都有剪枝的问题,目的就是去除不可能的分支,提高效率, 这里我用了STL的set容器来判重,在搜到一种局面后,在set里对这个局面进行查找,如果存在的话,就 阅读全文
posted @ 2022-01-18 22:30 GGood_Name 阅读(83) 评论(0) 推荐(0)
摘要: 序列重排 题意: 给定一个长度为 n 的整数序列 a1,a2,…,an。 请你对序列进行重新排序(也可以保持原序列) 要求新序列满足每个元素(第 1 个除外)都恰好是前一个元素的两倍或前一个元素的三分之一。 题解: 因为要求新序列满足每个元素(第 1 个除外)都恰好是前一个元素的两倍或前一个元素的三 阅读全文
posted @ 2022-01-16 20:24 GGood_Name 阅读(66) 评论(0) 推荐(0)
摘要: https://codeforces.com/contest/1624/problem/D 思路: 贪心 首先,我们将尝试将相同的字符对添加到回文中。 只要至少有 k 对,让我们添加它们。 之后就不能再添加几个字符了,但是可以尝试在中间添加一个字符。 如果至少还剩下 k 个字符,则可以这样做。 代码 阅读全文
posted @ 2022-01-14 21:41 GGood_Name 阅读(39) 评论(0) 推荐(0)
摘要: A. Ancient Civilization 题意: 给你n个数a ,找到一个数x(具有k位),使他与n个数的dis(x,ai)和最小 dis(x,y) x,y转化为二进制后 对应位不同位数的和; 思路: 统计每个数a的转化为二进制后,出现1的位置上加一; 遍历k位 某一位出现次数大于 n/2 ; 阅读全文
posted @ 2022-01-13 20:25 GGood_Name 阅读(52) 评论(0) 推荐(0)
摘要: 2017WF Airport Construction 题意: 逆时针给一个简单多边形(不一定为凸多边形)的每一条边,问内部可放置的最长线段的长度。数据保证无两条边共线。 思路: 首先,由于不一定是凸多边形,直接用凸包旋转卡壳求直径方法是不对的。 考虑最长的线段何时取到 假设线段不过两个顶点,其长度 阅读全文
posted @ 2022-01-12 22:59 GGood_Name 阅读(129) 评论(0) 推荐(0)
摘要: 游园安排 这道题的本质是最长上升子序列 但这一题又有点不一样,这是最长上升字典序的问题,就是将一个字符串的人名所组成的字典作为字符,取最长的上升子序列 思路: LIC思想 动态规划优化-二分加贪心 二分: 直接使用lower_bound来查找的 贪心:(LIC)首先将所有人序列取出存储到数组中后,先 阅读全文
posted @ 2022-01-10 22:26 GGood_Name 阅读(48) 评论(0) 推荐(0)