题目描述 在平面上有 n 个点(n <= 50),每个点用一对整数坐标表示。例如:当 n=4 时,4个点的坐标分另为:p1(1,1),p2(2,2),p3(3,6),P4(0,7),见图一。 这些点可以用 k 个矩形(1<=k<=4)全部覆盖,矩形的边平行于坐标轴。当 k=2 时,可用如图二的两个矩 ...
分类:
其他好文 时间:
2017-07-02 22:18:43
阅读次数:
193
在线段树中的扫描线主要是解决矩形面积以及周长问题,比方下图 让你求解全部矩形覆盖的面积和,或者是周长和,假设用平常的方法,很之麻烦。并且效率也不高。这里就会用到线段树的扫描线 扫描线应对方案: 因为题目提供的矩形比較多。坐标也非常大。所以坐标须要离散化,能够依照题目要求或者自己的喜好,离散横坐标或者 ...
分类:
其他好文 时间:
2017-06-17 16:03:42
阅读次数:
118
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4302 【题解】 出自2015多校-学军 题意大概是给出一个n*m的格子有一个格子(x,y)是坏的,用一些矩形覆盖没有坏的格子,使得每个矩形都有一面靠着边界。求最大的矩形的面积最小。 稍微分析就 ...
分类:
其他好文 时间:
2017-06-10 20:22:26
阅读次数:
170
覆盖的面积 Problem Description 给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积. Input 输入数据的第一行是一个正整数T(1<=T<=100),代表测试数据的数量.每个测试数据的第一行是一个正整数N(1<=N<=1000),代表矩形的数量,然后是N行数据,每一行 ...
分类:
其他好文 时间:
2017-06-09 12:33:40
阅读次数:
190
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 解题思路:得到f(n)=f(n-1)+f(n-2) 1 #include <iostream> 2 using namespace std; 3 class S ...
分类:
其他好文 时间:
2017-05-10 11:21:04
阅读次数:
120
T1.均分纸牌 给出n堆纸牌,每堆a[i]张,总数是n的倍数,每堆只能和相邻的堆移动牌,求最小的次数使得每堆排数相同。 说实话,本来想想就是O(n)的题。。。然后仔细考虑了一下,假设[1,i]的区间纸牌不等于应有的纸牌数的时候,肯定是从[i+1,n]上转移过来的。。那么最直接的方法就是一次移到位,向 ...
分类:
其他好文 时间:
2017-04-29 20:02:36
阅读次数:
165
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? class Solution { public: int rectCover(int number) { if(number == 0) return 0; i ...
分类:
其他好文 时间:
2017-04-22 09:39:07
阅读次数:
130
题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 思路:依然是斐波那契的变形, (1)当 n < 1时,显然不需要用2*1块覆盖,按照题目提示应该返回 0。 (2)当 n = 1时,只存在一种情况。 (3)当 n ...
分类:
其他好文 时间:
2017-04-08 14:56:54
阅读次数:
119
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 思路:通过计算前几个得到是斐波那契数列。 1 public class Solution { 2 public int RectCover(int target) { 3 ...
分类:
其他好文 时间:
2017-02-13 21:37:13
阅读次数:
165
传送门 旋转卡壳。 首先求凸包没什么好商量的。 然后有一个结论,如果存在一个最小的矩形覆盖,那么凸包里必定存在一条边和矩形的边重合。 自己yy一下就好啦,很容易想明白。 然后枚举每条边,移动另外三条边即可。 注意点积,叉积的结合运用什么的。 ...
分类:
其他好文 时间:
2017-01-29 19:12:58
阅读次数:
343