Pagini recente » Cod sursa (job #333159) | Cod sursa (job #206254) | Cod sursa (job #2207634) | Cod sursa (job #2171259) | Cod sursa (job #3167273)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int n,i,j,st,dr,mid,nrdr;
pair <int,int> clnt[50001],minim[50001];
int main()
{
ifstream fin("pachete.in");
ofstream fout("pachete.out");
fin>>n;
fin>>clnt[50000].first>>clnt[50000].second;
nrdr=n;
for(i=0;i<n;i++){
fin>>clnt[i].first>>clnt[i].second;
minim[i].first=abs(clnt[i].first-clnt[50000].first)+abs(clnt[i].second-clnt[50000].second);
minim[i].second=i;
}
sort(minim,minim+n);
for(i=0;i<n;i++){
if(clnt[minim[i].second].first!=-1){
int adv=0;
for(j=i+1;j<n;j++){
if(clnt[minim[i].second].first>=min(clnt[minim[j].second].first,clnt[50000].first)&&clnt[minim[i].second].first<=max(clnt[minim[j].second].first,clnt[50000].first)&&clnt[minim[i].second].second>=min(clnt[minim[j].second].second,clnt[50000].second)&&clnt[minim[i].second].second<=max(clnt[minim[j].second].second,clnt[50000].second)&&i!=j&&clnt[minim[j].second].first!=-1){
clnt[minim[i].second].first=-1;
//cout<<i<<" "<<j<<" "<<minim[i].second<<" "<<minim[j].second;
i=j;
nrdr--;
adv=1;
}
}
if(adv==1){
clnt[minim[j].second].first=-1;
i--;
}
}
}
fout<<nrdr;
return 0;
}