Pagini recente » Cod sursa (job #2922298) | Cod sursa (job #369816) | Cod sursa (job #2535283) | Cod sursa (job #48286) | Cod sursa (job #1027690)
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
ifstream in ("triang.in");
ofstream out ("triang.out");
int N;
struct punct
{
double x, y;
};
punct v[1505];
bool comparare (double a, double b)
{
double m=abs(a-b);
if (m<0.009999)
return 1;
return 0;
}
int main()
{
in>>N;
for (int i=0;i<N;++i)
{
in>>v[i].x>>v[i].y;
}
int nr=0;
for (int i=0;i<N;++i)
for (int j=i+1;j<N;++j)
{
double dpatratIJ=(v[i].x-v[j].x)*(v[i].x-v[j].x)+(v[i].y-v[j].y)*(v[i].y-v[j].y);
for (int k=0;k<N;++k)
{
if (k!=i && k!=j)
{
double dpatratIK=(v[i].x-v[k].x)*(v[i].x-v[k].x)+(v[i].y-v[k].y)*(v[i].y-v[k].y);
double dpatratJK=(v[j].x-v[k].x)*(v[j].x-v[k].x)+(v[j].y-v[k].y)*(v[j].y-v[k].y);
if (comparare(dpatratIJ, dpatratIK) && comparare(dpatratIJ,dpatratJK))
++nr;
}
}
}
out<<nr/3;
return 0;
}