2018牛客多校
Spy97
这个作者很懒,什么都没留下…
展开
-
2018 牛客多校第二场 C message
题意: 给出n条直线,询问m次,每次询问给出一条直线,问这条直线与那n条直线的在y轴右侧交点的横坐标的最大值。 题解: 设交点为,则 要使x最大,我将一条直线的两个系数a、b看做点(a,b),那么答案就是n个点中到询问点的斜率的最小值。 为了方便和便于理解,我们将x坐标取反,转为求斜率的最大值。 求上图黑点到红点的斜率最大值,可以变为只求下图连线中的点的斜率 ...原创 2018-09-19 00:16:42 · 405 阅读 · 0 评论 -
牛客国庆集训派对Day2 魔法阵
题意: 给出3个点,确定一个正三角形,每个三角形的顶点一一对应一个给出的点,使对应的最大距离最小。 题解: 官方的 给出最优解的样子 代码: #include<bits/stdc++.h> #define N 1010 #define INF 0x3f3f3f3f #define eps 1e-10 #define pi acos(-1.0) #d...原创 2018-10-02 21:00:41 · 260 阅读 · 0 评论 -
2019牛客多校第三场 Removing Stones
题意 给出一个序列,问有多少个区间满足:最大值的两倍小于等于区间和 题解 分治的思想,也是笛卡尔树 对于所有的最大值,看多少个包含它的区间满足要求 先在区间[1,n][1,n][1,n]中找到最大值的下标kkk 如果左区间长度较小,我们则枚举左端点在左区间的,在右区间二分找到合适的右端点 如果右区间长度较小,则枚举右端点在右区间 总复杂度为O(n⋅log2n)O(n \cdot log^2 n...原创 2019-07-25 21:13:46 · 431 阅读 · 0 评论