Pagini recente » Statistici dan radu (danradu) | Statistici Apetrei Ciprian (cippy) | Cod sursa (job #720554) | Cod sursa (job #1736768) | Cod sursa (job #290640)
Cod sursa(job #290640)
#include<algorithm>
#include<complex>
using namespace std;
#define DIM 1001
#define INF 2000000001
int n;
double b[DIM];
struct pct{
int x,y;};
pct a[DIM];
void read(){
int i;
scanf("%d",&n);
for(i=1; i<=n; ++i)
scanf("%d%d",&a[i].x,&a[i].y);}
int comp(double a,double b){
if(fabs(a-b)<0.00000001)
return 1;
return 0;}
void solve(){
int i,j,m,nr,sol;
for(i=1,m=0; i<n; ++i)
for(j=i+1; j<=n; ++j)
if(a[j].x-a[i].x)
b[++m]=(double)(a[j].y-a[i].y)/(a[j].x-a[i].x);
else
b[++m]=INF;
sort(b+1,b+m+1);
for(i=1,sol=0; i<=m; ++i){
for(nr=1; comp(b[i],b[i+1])&&i<m; ++nr,++i);
sol+=nr*(nr-1)/2;}
printf("%d",sol);}
int main(){
freopen("trapez.in","r",stdin);
freopen("trapez.out","w",stdout);
read();
solve();
return 0;}