题意:给n个点的起始坐标以及他们的行走方向,每一单位时间每个点往它的方向移动一单位.问最小能包围所有点的矩形. 解法:看到题目求极值,想了想好像可以用三分法求极值,虽然我也不能证明面积是个单峰函数. 尝试交了一发结果73组数据WA了1组数据,看起来似乎三分法是对的,但是至今还没找到哪个细节错了qwq,先记录下来. #include<bits/stdc++.h> using namespace std; ; const int INF=0x3f3f3f3f; ; int n,m,x[N],y[N…
[SCOI2010]传送带 LG传送门 三分法模板. 关于为什么可以三分,我选择感性理解,有人证明了,总之我是懒得证了. 假设路径是\(A \to E \to F \to D\),\(E\)和\(F\)分别是从\(AB\)到平面上的拐角和从平面上到\(CD\)上的拐角.首先三分\(E\)的位置,在此基础上三分\(F\)的位置就可以了. #include<cstdio> #include<cmath> #define I inline #define D double using n…
前言 这篇博客是根据我在打这道题的时候遇到的问题,来打的,有些细节可能考虑不到. 题目 在N(1<=N<=100000)个数A1-An组成的序列上进行M(1<=M<=100000)次操作,操作有两种: (1)1 L R C:表示把A[L]到A[R]增加C(C的绝对值不超过10000): (2)2 L R:询问A[L]到A[R]之间的最大值. 分析 由于本人刚刚学会splay,不够精通,splay的打法这里就先不说. 就讲讲求区间极值的方法吧. 对于每个位置开一个节点,记录这个节点的…