上一页 1 ··· 7 8 9 10 11 12 下一页
摘要: 听说这道题在赛时难倒了好多神仙。其实这只是一个暴力枚举。 首先肯定不能直接贪心做,如果对于某个人去最优的方案,第二个人就不一定最优了。 注意到 \(cnt\) 值很小。所以可以考虑枚举第一个人拿了多少把剑,剩余的肯定尽可能拿战斧。第二个人就可以贪心拿重量小的武器知道拿光,然后拿另外一个。 #incl 阅读全文
posted @ 2020-10-24 19:57 Little09 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 这题其实重题了,但是我没有发现。 考虑怎么弄掉一个区间。要么用操作 $2$ 把它们一次切光,要么用操作 $1$ 把它们切到一个为 $0$,再递归下去。 由于区间不重复,所以不用记忆化,直接做就可以了。 #include<bits/stdc++.h> using namespace std; int 阅读全文
posted @ 2020-10-24 19:54 Little09 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 感觉这道题好像出的水了点,像我这种对期望一窍不通的菜鸡也可以推出来。我的思路好像和大家不太一样(更简单一点吧)……但是好歹过了,大家可以参考一下。 我们设要通过第 \(x\) 个点需要的期望步数为 \(E(x)\)。那么我们可以根据定义推出 \(E(x)\) 的表达式: \(E(x)=\dfrac{ 阅读全文
posted @ 2020-10-24 19:49 Little09 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 先说一句,我 FST 了。 题意就不说了。可以想到,对于一个 \(a_{i+1}\) 相对于 \(a_i\) 来说 \((a_i≠a_{i+1})\),在 \(m\) 个 \(b\) 数组中只需要有一个的 \(b_{i+1}\) 与 \(b_i\) 不同。这是很显然的。 举个例子: 7 = 2 + 阅读全文
posted @ 2020-10-24 19:40 Little09 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 一个奇怪的做法。先算出两个人到达每个标志用的时间,然后枚举所有两个相邻标志之间,检查两车是否在此之间相遇。如果找到了,计算出时间就可以了。 注意一下精度。 #include<bits/stdc++.h> using namespace std; int n,l; int a[100005]; lon 阅读全文
posted @ 2020-10-24 19:39 Little09 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 根据题意,对于每个强盗和每盏灯的关系,我们列出 \(n*m\) 个条件,第 \(i\) 个条件是满足 \(x>a_i\) 或 \(y>b_i\)。我们列出所有条件,按 \(a_i\) 排个序,枚举一下可以满足哪几个条件,然后更新答案就可以了。 #include<bits/stdc++.h> usin 阅读全文
posted @ 2020-10-24 19:38 Little09 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 这题有的唯一的题解是尺取法做的,其实这题也可以简单地二分查找。(然而其实不比尺取法实现容易) 先说明,洛谷题面里翻译有误:两两工资差不超过d 应为 工资差值小于d。 两两的差其实转化为最大和最小的差。那么我们先对所有人按工资排序,然后枚举最小的人是谁,在他工资上加 \(d\),然后找到小于这个值的人 阅读全文
posted @ 2020-10-24 19:36 Little09 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 贪心地想,肯定是给询问多的位置更大的数。所以先把数排序,对于每个问题差分一下,最后求前缀和,得到每个位置的询问次数。再把询问次数排序,一一对应即可。 #include<bits/stdc++.h> using namespace std; int n,m; long long a[200005]; 阅读全文
posted @ 2020-10-24 19:35 Little09 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 单调性优化:单调栈与单调队列 一、单调栈 单调栈,就是要维护一个栈,单调递增或递减。一般地,放入元素时,如果栈顶的元素不符合单调递增(或递减),那就把它弹出,再查栈顶。直到符合或栈空了,再把元素放入。 适用于快速求每个数两侧比它大(或小)的数的位置。 例题-柱状图中最大的矩形 算法 ·其实很简单 · 阅读全文
posted @ 2020-10-24 19:20 Little09 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 这题的加强版的我们 PJ 模拟赛的 T4,个人感觉还有点意思的。 先把题目转化一下,就是每个询问给你一个 \(K\) 值和 \(v\) 值,把所有小于 \(K\) 的边都删掉,然后从 \(v\) 能走到几个节点。 可以离线,所以选择离线。把问题按 \(K\) 从大到小排序,把边按权值从大到小排序。然 阅读全文
posted @ 2020-10-24 19:11 Little09 阅读(130) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 下一页