暴力枚举水过去的。。看看status的大部分人的运行时间应该都是暴力枚举的,有某大神是0ms过的,不知道用的什么算法
#include<cstdio>
#include<vector>
using namespace std;
struct Rect
{
int xmin, xmax, ymin, ymax;
};
int main()
{
int n;
vector<Rect*> V;
while (scanf("%d", &n) != EOF)
{
V.clear();
while (n--)
{
Rect *r = new Rect();
scanf("%d %d %d %d", &(r->xmin), &(r->xmax), &(r->ymin),
&(r->ymax));
V.push_back(r);
}
int res = 0;
for (size_t i = 0; i < V.size(); i++)
for (size_t j = 0; j < V.size(); j++)
if (j != i)
{
if (V[i]->xmin >= V[j]->xmin && V[i]->xmax <= V[j]->xmax
&& V[i]->ymin >= V[j]->ymin
&& V[i]->ymax <= V[j]->ymax)
{
res++;
break;
}
}
printf("%d\n", res);
for (size_t i = 0; i < V.size(); i++)
delete V[i];
}
return 0;
}