Pagini recente » Cod sursa (job #1217230) | Cod sursa (job #2567407) | Cod sursa (job #270522) | Cod sursa (job #1678674) | Cod sursa (job #2623245)
#include<iostream>
#include <fstream>
#include <vector>
#include <set>
#include <cmath>
#include <algorithm>
using namespace std;
ifstream f ("patrate3.in");
ofstream g ("patrate3.out");
vector <pair <int,int> > v;
set <pair <int,int> > s;
int main()
{
int n;
f>> n;
double x, y;
for(int i = 0; i < n; ++i)
{
f >> x >> y;
x = (int)round(x*10000);
y = (int)round(y*10000);
v.push_back(make_pair(x, y));
s.insert(v[i]);
}
sort(v.begin(), v.end());
int rez = 0;
for(int i = 0; i < n; ++i)
for(int j = i+1; j < n; ++j)
if(v[j].first > v[i].first && v[j].second >= v[i].second)
{
if(i == j) continue;
int dx = v[j].first - v[i].first;
int dy = v[j].second - v[i].second;
if(s.find(make_pair(v[i].first-dy, v[i].second+dx)) != s.end()
&& s.find(make_pair(v[j].first-dy, v[j].second+dx)) != s.end())
rez++;
}
g << rez;
f.close();
g.close();
return 0;
}