Cod sursa(job #870010)

Utilizator bratiefanutBratie Fanut bratiefanut Data 2 februarie 2013 18:24:24
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
int v[801];
int main()
{
    FILE *f,*g;
    f=fopen("nrtri.in","r");
    g=fopen("nrtri.out","w");
    int n,i,j,h,a,b,c,x=0;
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
        fscanf(f,"%d",&v[i]);
    sort(v+1,v+n+1);
    for(i=1;i<=n-2;i++)
    {
        for(j=i+1;j<=n-1;j++)
        {
            for(h=j+1;h<=n;h++)
            {
                if(v[i]<=v[j]+v[h]&&v[j]<=v[i]+v[h]&&v[h]<=v[i]+v[j])
                    x++;
                else
                    if(v[h]>v[i]+v[j])
                        break;
            }
        }
    }
    fprintf(g,"%d\n",x);
    return 0;
}