先放代码 晚上在注释(我要去van了) cpp include include include using namespace std; const int manx=5010; struct Edge { int x1,x2; int y; int f; void change() { if(x1 ...
分类:
其他好文 时间:
2018-06-20 19:01:58
阅读次数:
194
扫描线算法 给出几个矩形对角端点坐标,求这些矩形整体覆盖的面积。 基本思想如下图: 1. 先离散化。 2. 【扫描线】是一根相信中的虚线,从左往右扫描,遇到【矩形】则成为【事件】。 3. 遇到【起始边】,则 相应区间的【厚度】或者【覆盖次数】CoverCnt+1。 4. 遇到【结束边】,则 相应区间 ...
分类:
编程语言 时间:
2018-06-12 13:33:30
阅读次数:
170
title: "openGL实现图形学扫描线种子填充算法" date: 2018 06 11T19:41:30+08:00 tags: ["图形学"] categories: ["C++"] 先上效果图 白色的起始种子点 代码 c++ include include include include ...
分类:
编程语言 时间:
2018-06-11 22:08:03
阅读次数:
515
题意:按顺序在坐标轴上画$n$个颜色为$1\cdots n$的矩形(数字大的颜色覆盖数字小的颜色),问最后能看到多少种颜色 先离散化,然后考虑扫描线+线段树 线段树每个节点用一个set存覆盖整个区间的颜色,$mx$表示之前未被看到并且能在这个区间看到的最大颜色,$mn$表示能在这个区间看到的最小颜色 ...
分类:
其他好文 时间:
2018-06-03 23:49:28
阅读次数:
360
1206 Picture 题目来源: IOI 1998 基准时间限制:2 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 收藏 关注 1206 Picture 题目来源: IOI 1998 基准时间限制:2 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 12 ...
分类:
其他好文 时间:
2018-06-03 15:36:39
阅读次数:
199
Link: Codeforces 35E 传送门 Brief Intro: 给定$n$个矩形,求出轮廓线的所有顶点 Solution: 对于此类可拆分成多个事件点的题目,使用扫描线的方式 将每个矩形分为起始边和终止边两个事件,排序,按顺序扫描 分类讨论: 维护当前最高的高度, (1)如果是起始边,判 ...
分类:
其他好文 时间:
2018-06-02 23:56:57
阅读次数:
206
1463 找朋友 基准时间限制:1.5 秒 空间限制:262144 KB 分值: 80 难度:5级算法题 收藏 关注 1463 找朋友 基准时间限制:1.5 秒 空间限制:262144 KB 分值: 80 难度:5级算法题 1463 找朋友 基准时间限制:1.5 秒 空间限制:262144 KB 分 ...
分类:
其他好文 时间:
2018-06-01 19:12:36
阅读次数:
171
题解: 我觉得可能该去看看扫描线的难一点的题目。。 我好像只会求面积求周长。。 这题我想的是对每个点求一下以它为右上角对应的区间的和 坐标可以离散化一下二分查找一下对应的位置 然后树套树维护一下 我以为他这个n只给了1e4所以这个很有理有据。。。 然后这种题目其实套路差不多都是扫描线吧 就是扫x轴, ...
分类:
其他好文 时间:
2018-05-25 01:44:12
阅读次数:
141
BZOJ_1654_[Usaco2007 Open]City Horizon 城市地平线_扫描线 Description N个矩形块,交求面积并. N个矩形块,交求面积并. Input * Line 1: A single integer: N * Lines 2..N+1: Input line ...
分类:
其他好文 时间:
2018-05-20 15:32:04
阅读次数:
142
(使用线段树实现的)扫描线算法 一、算法应用场景 一个空间中存在若干矩形,且矩形的放置方向一致——(矩形的每条边必然和X或者Y轴平行) 求这些矩形覆盖的总面积的大小。(存在若干个矩形相互重叠的问题) 二、解决思路 考虑线段树可以logN的时间内做到区间覆盖,区间设置特殊值。因此应当采用线段树进行计算 ...
分类:
编程语言 时间:
2018-05-19 20:40:43
阅读次数:
213