Pagini recente » Cod sursa (job #1487693) | Cod sursa (job #2264984) | Cod sursa (job #223946) | Cod sursa (job #2069206) | Cod sursa (job #476745)
Cod sursa(job #476745)
#include <fstream>
#include <algorithm>
using namespace std;
double panta[1<<20];
int i,j,x[1005],y[1005],n,k,total;
bool cmp(double a,double b)
{
return (a<b);
}
int main()
{
long long particular;
ifstream fi("trapez.in");
ofstream fo("trapez.out");
fi>>n;
for(i=1;i<=n;i++)
fi>>x[i]>>y[i];
k=0; particular=0;
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
{
if(y[i]==y[j])
particular++;
else
panta[++k]=(double)(x[i]-x[j])/(double)(y[i]-y[j]);
}
sort(panta+1,panta+k+1,cmp);
n=0; total=0;
for(i=1;i<=k;i++)
for(j=i+1;j<=k and panta[i]==panta[j];j++, total++);
total+=(particular*(particular-1))/2;
fo<<total<<"\n";
fo.close();
return 0;
}