Pagini recente » Cod sursa (job #777362) | Cod sursa (job #1687378) | Cod sursa (job #267125) | Cod sursa (job #3282577) | Cod sursa (job #825301)
Cod sursa(job #825301)
#include<fstream>
#include<cstdlib>
#include<iostream>
using namespace std;
int n,m;
struct pct { int x,y; };
pct *anim;
struct drept {int x1,y1,x2,y2; };
drept * zoo;
void citire ()
{
ifstream fin ("zoo.in");
fin>>n;
anim = new pct[n];
for (int i=0;i<n;++i)
fin>>anim[i].x>>anim[i].y;
fin>>m;
zoo = new drept[m];
//zoo = (drept*)malloc (m*sizeof(drept));
for (int j=0;j<m;j++)
fin>>zoo[j].x1>>zoo[j].y1>>zoo[j].x2>>zoo[j].y2;
//colt st sus, dr jos
fin.close();
}
int compar1 (const void *a, const void *b)
{
return (*(int*)(a+sizeof(int)) - *(int*)(b+sizeof(int)));
}
int compar2 (const void *a, const void *b)
{
return (*(int*)a - *(int*)b);
}
void rezolvare ()
{
/*qsort (anim, n, sizeof(pct), compar1);
qsort (anim, n, sizeof(pct), compar2);
for (int i=0;i<n;i++)
cout<<anim[i].x<<' '<<anim[i].y<<'\n';
*/
ofstream fout("zoo.out");
int sum=0;
for (int c=0;c<m;c++)
{
sum=0;
for (int i=0;i<n;++i)
if (anim[i].x >= zoo[c].x1 && anim[i].x <= zoo[c].x2
&& anim[i].y >= zoo[c].y1 && anim[i].y <=zoo[c].y2)
++sum;
fout<<sum<<' ';
}
fout.close();
}
int main () {
citire();
rezolvare();
}