Pagini recente » Cod sursa (job #1428409) | Cod sursa (job #2171239) | Cod sursa (job #1163941) | Cod sursa (job #1270689) | Cod sursa (job #1384696)
#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=1;
for (int i=0;i<S.size();i++)
{
if (S[i]==S[i-1])
aux++;
else contor+=(aux*(aux-1)/2),aux=1;//combinatii de N luate cate 2
}
contor+=(aux*(aux-1)/2);
out<<contor;
return 0;
}