Pagini recente » Cod sursa (job #2705203) | Cod sursa (job #2344053) | Cod sursa (job #32363) | Cod sursa (job #886341) | Cod sursa (job #1299173)
#include <iostream>
#include <fstream>
#define x first
#define y second
#define pdd pair<double,double>
#define pb push_back
#include <vector>
#define mp make_pair
#include <algorithm>
#define sc sort(dist.begin(),dist.end())
#include <math.h>
#include <stdlib.h>
using namespace std;
const double precizie = 0.0001;
vector<pdd> v;
vector<double> dist;
double Distanta(pdd a , pdd b){
return ( sqrt( (b.x - a.x)*(b.x - a.x) + (b.y - a.y)*(b.y - a.y) ) );
}
bool Conditie(double a , double b , double c){
return (fabs(a - b) < 1e-5 && fabs(a - c) < 1e-5 && fabs(b - c) < 1e-5);
}
int main()
{
ifstream f("triang.in");
ofstream g("triang.out");
int n;
f>>n;
for(int i = 1 ; i <= n ; ++i){
double a,b;
f>>a;
f>>b;
v.pb(mp(a , b));
}
/*for(int i = 0 ; i < v.size() ; ++i){
cout<<v[i].x<<" "<<v[i].y<<"\n";
}*/
for(int i = 0 ; i < v.size() - 1 ; ++i){
for(int j = i + 1 ; j < v.size() ; ++j){
dist.pb(Distanta(v[i] , v[j]));
}
}
sc;
/*for(int i = 0 ; i < dist.size() ; ++i){
cout<<dist[i]<<" ";
}*/
int s = 0;
for(int i = 0 ; i < dist.size() - 2 ; ++i){
for(int j = i + 1 ; j < dist.size() - 1 ; ++j){
for(int k = j + 1 ; k < dist.size() ; ++k){
if(Conditie(dist[i] , dist[j] , dist[k])){
++s;
}
}
}
}
g<<s;
return 0;
}