- 博客(4)
- 收藏
- 关注
原创 2025牛客寒假算法基础集训营6个人补题
首先可以观察到:磨刀一定是从第一回合开始连续磨到不能磨为止,因为早磨刀在任何情况下都不会吃亏。所以磨刀策略是固定的。只需要考虑从哪一时刻开始砍,并将每种情况进行大小比较即可。
2025-02-16 23:27:47
175
原创 2025牛客寒假算法基础集训营5个人补题
有关贪心的小思维题。由于反置代价小于等于交换代价,那么一定不能用交换去代替反置。首先,如果交换的代价大于了两次反置的代价,那么直接全部使用反置即可。否则,我们将不匹配的位置分类,发现最多只有四类,ab分别是00,01,10,11 ,任意 两个不同种类不匹配的话,我们一定可以交换其中的某一位0和1使之两两匹配,那么我 们就只看最多的一类不匹配的位置的数量有没有超过总数的一半即可。如果超过就超过的部分反置,其余匹配,否则一定存在一种分配方式使之匹配后至多 仅剩一个。
2025-02-16 22:15:05
202
原创 2025牛客寒假算法基础集训营4个人补题
时,将其分为‘1’和‘2’两种情况继续进行dfs,最终得出所有‘?这一题我最初尝试暴力无法解决,需要优化代码,直接求出龙炎命中每个位置所消灭怪物的数量是不切实际的,所以我决定通过计算每一条斜线的怪物数量来优化代码,从左上到右下的斜线,横纵坐标之差为固定值,从右上到左下的斜线,横纵坐标之和为固定值,因此我们可以非常便捷地求出每个斜线的怪物数量,想求哪个点对应的消灭怪物数量只需要将两条斜线的怪物数量相加再减去重合部分的怪物数量即可。
2025-02-10 19:31:48
851
原创 2025牛客寒假集训营1个人补题
若右端点小于 iii ,理论上应该将这个区间丢弃,找到第一个满足右端点大于等于 iii 的区间,但由于区间不能浪费,因此此时一定无解。若优先队列为空,同样无解。我们可以使用优先队列维护右端点最小的区间,对区间按左端点排序后,可以从前往后将左端点小于 iii 的区间加入优先队列,然后取出右端点最小的区间。
2025-01-26 22:13:14
431
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅