Cod sursa(job #160173)

Utilizator redkar23Dezactiveazama redkar23 Data 14 martie 2008 20:14:18
Problema Triang Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <stdio.h>
#include <math.h>

FILE *f,*g;
float point[1500][2];
int n,i,j,how;


int function(float a,float b, float c){
float precision=0.001;
if(
     ((a - precision )<b&&(a+precision)>b)&&
     ((a - precision )<c&&(a+precision)>c)) return 1;

return 0;
}

int main(){
f=fopen("triang.in","r");
g=fopen("triang.out","w");
fscanf(f,"%d",&n);
for(i=0;i<n;i++){
  fscanf(f,"%f.3",&point[i][0]);
  fscanf(f,"%f.3",&point[i][1]);
}
for(i=0;i<n-2;i++)
  for(j=i+1;j<n;j++)
     if(function(
        sqrt((point[j-1][0]*point[j-1][0]-2*point[j-1][0]*point[i][0]+point[i][0]*point[i][0])+(point[j-1][1]*point[j-1][1]-2*point[j-1][1]*point[i][1]+point[i][1]*point[i][1])),
            sqrt((point[j][0]*point[j][0]-2*point[j][0]*point[i][0]+point[i][0]*point[i][0])+(point[j][1]*point[j][1]-2*point[j][1]*point[i][1]+point[i][1]*point[i][1])),
            sqrt((point[j-1][0]*point[j-1][0]-2*point[j-1][0]*point[j][0]+point[j][0]*point[j ][0])+(point[j-1][1]*point[j-1][1]-2*point[j-1][1]*point[j][1]+point[j][1]*point[j][1]))
       )) how++;

fprintf(g,"%d\n",how);
fclose(g);
return 0;
}