Pagini recente » Cod sursa (job #2891103) | Cod sursa (job #3144983) | Cod sursa (job #2776592) | Cod sursa (job #1699516) | Cod sursa (job #1384693)
#include <fstream>
//#include <iostream>
#include <algorithm>
#define NMax 1005
#include <vector>
using namespace std;
ifstream in ("trapez.in");
ofstream out ("trapez.out");
struct Punct
{
double x,y;
}punct[NMax];
double m;
int N;
vector <double> S;
int main()
{
in>>N;
for (int i=1;i<=N;i++)
{
in>>punct[i].x>>punct[i].y;
}
for (int i=1;i<=N-1;i++)
for (int j=i+1;j<=N;j++)
{
m=(double)(punct[i].y - punct[j].y) * 1/ (punct[i].x - punct[j].x);
S.push_back(m);
}
int contor=0;
sort(S.begin(),S.end());
int aux;
for (int i=0;i<=S.size();i++)
{
if (S[i]==S[i-1])
aux++;
else aux=1,contor+=(aux*(aux-1)/2);//combinatii de N luate cate 2
}
out<<contor;
return 0;
}