首页 > TAG信息列表 > Elevations

UVA 221 Urban Elevations

题目链接:https://vjudge.net/problem/UVA-221 题目翻译摘自《算法禁赛入门经典》 题目大意   有n(n ≤ 100)个建筑物。   输入每个建筑物左下角坐标(x,y)、宽度(即 x 方向的长度)、深度 (即 y 方向的长度)和高度(以上数据均为实数),输出正视图中能看到的所有建筑物,按 照左下角 x 坐标从小到

Urban Elevations UVA - 221

题目大意:给出建筑的俯视图,以及每个建筑的左下角坐标,宽度,长度,高度。求正视图可观察到的建筑的编号 思路:建筑物的可见性等于南墙的可见性,依据左下角排序后,逐个判断每个建筑是否可见。对南墙的x坐标进行排序,相邻两个x坐标之间的南墙可见性一致,通过判断这部分南墙中的特殊点(中间点)可以

Urban Elevations UVA - 221

#include <iostream> #include <bits/stdc++.h> #define maxn 100+5 using namespace std; int n; struct Node { double x,y,w,d,h; int id; Node(double x,double y,double w,double d,double h,int id):x(x),y(y),w(w),d(d),h(h),id(id){};

UVA 221 Urban Elevations

思路:   一些解释:   ①:建筑的排序:   下面是以输入顺序为标号,在数组bd中的顺序:   排序后在数组bd中的顺序:      以后我们比较就按这个顺序   ②:x坐标的排序   x的内容是每一个建筑的左边界和右边界,我们把他去重排序后,就是一个一个的坐标,相邻的x形成一个区间,   取