计算几何
litble
Away From OI已久,一天天变菜中,博客平时不咋看,也没能力答疑和改错了,因此不会互动见谅orz
展开
-
bzoj1492 货币兑换cash dp斜率优化+splay/cdq分治
斜率优化首先,由于如果在i天买在j天卖有利可图,那么最优方法就是在i天花完钱在j天卖完。我们令fif_i为第i天可以得到的最多钱数,然后可以先列方程求出花完钱在第j天得到的两种金券数xj=fjRjajRj+bjx_j=\frac{f_jR_j}{a_jR_j+b_j}和yj=fjajRj+bjy_j=\frac{f_j}{a_jR_j+b_j},然后得到状态转移方程:fi=xjai+yjbif原创 2018-01-03 20:29:32 · 825 阅读 · 0 评论 -
bzoj3571/洛谷P3236/loj2205 画框 KM算法
题目分析真TM神题。对于一种匹配方案,我们将其记为一个点(∑Ai,pi,∑Bi,pi)(∑Ai,pi,∑Bi,pi)( \sum A_{i,p_i} ,\sum B_{i,p_i}) ,那么我们要求横纵坐标相乘最小的一个点。乘积相等的两点,一定在同一条反比例函数曲线上。反比例函数曲线,绝对值越小,越靠近坐标轴,所以我们不停维护答案的话,应该要维护出一个下凸包。考虑这么一种算法,首先找到...原创 2018-03-24 16:43:55 · 357 阅读 · 0 评论 -
洛谷P3249/bzoj4541/loj2052 矿区 平面图转对偶图
题目分析所谓对偶图,就是将平面图中所有的面变成点,点变成面,边“旋转90度”后得到的图。如何转对偶图,关键就是如何划分原图中的面,这个方法是,双向边先看成两条单向边,这样每条边都属于一个面,将以每一个点为起点的边极角排序,对于一条边(s,t),我们在以t为起点的边中找到(t,s),排序后其上一条边就是当前面的下一条边界,这样一直找到整个区域闭合,就说明把这个面上的边全部找出来了。这个步骤可...原创 2018-03-28 11:34:24 · 452 阅读 · 0 评论 -
圆的反演与求公切圆
什么是圆的反演给定一个圆心为CCC半径为RRR的圆。对于在圆心CCC同侧的两个点AAA和A′A'A′,若∣CA∣∗∣CA′∣=R2|CA|*|CA'|=R^2∣CA∣∗∣CA′∣=R2,则说AAA和A′A'A′互为关于圆CCC的反演点。在经过一次反演后,圆CCC内的点都到了圆外,圆外的点都到了圆内。CCC被称为反演中心,RRR被称为反演半...原创 2019-01-18 10:51:29 · 1008 阅读 · 0 评论 -
本文标题就俩字:向量
感谢boshi和Dimitry大佬!!!您们tql!!!向量加减几何意义:满足平行四边形法则代数意义:a⃗±b⃗=(xa±xb,ya±yb,...)\vec a \pm \vec b=(x_a \pm x_b,y_a \pm y_b,...)a±b=(xa±xb,ya±yb,...)向量点乘几何意义:a⃗\vec aa在b⃗\vec bb上的投影与∣b⃗∣|\vec b|∣b∣的...原创 2019-01-08 15:51:51 · 295 阅读 · 0 评论 -
codeforces1019E Raining season 边分治+闵可夫斯基和+凸包
题目分析假设你准备把所有“可能”成为最长路径的路径都提取出来,显然是用树分治啦,这题中,边分治比点分治更方便。边分治教学->here边分治的套路,第一步将多叉树转为二叉树,对于新增加出来的边,它的aaa和bbb都是0。然后集中处理经过某一条边的路径,一条边将整棵树分为两个部分,这条路径由在这两个部分里的部分组成,于是我们要合并两个部分的信息。什么是可能成为最长路径的路径?将每条路径看...原创 2019-03-14 14:50:32 · 778 阅读 · 0 评论