Cod sursa(job #1316774)

Utilizator pepsiM4A1Ozturk Arif pepsiM4A1 Data 14 ianuarie 2015 09:08:12
Problema Trapez Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <stdio.h>
#include <algorithm>
int comp(double a,double b)
{
    return a<b;
}
int x[1001],y[1001];
double pante[500001];
int n;
int main()
{
    FILE *fin,*fout;
    fin=fopen("trapez.in","r");
    fout=fopen("trapez.out","w");
    fscanf(fin,"%d",&n);
    for(int i=1;i<=n;i++)
    {
            fscanf(fin,"%d%d",&x[i],&y[i]);
    }
    int pos=1;
    for(int i=1;i<=n;i++)
    {
            for(int j=i+1;j<=n;j++)
            {
                    if(x[j]!=x[i])
                    {
                                  pante[pos]=(double)(y[j]-y[i])/(x[j]-x[i]);
                                  pos++;
                    }
            }
    }
    int count=0;
    std::sort(pante+1,pante+pos,comp);
    pos--;
    for(int i=1;i<pos;i++)
    {
            if(pante[i]==pante[i+1]) count++;
    }
    fprintf(fout,"%d\n",count);
}