Cod sursa(job #1527530)

Utilizator AnaRaduAna-Maria Radu AnaRadu Data 18 noiembrie 2015 11:49:54
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <stdio.h>
#include <algorithm>
#define lim 800
using namespace std;
int v[lim+1];
int main(){
    FILE *fin,*fout;
    fin=fopen("nrtri.in","r");
    fout=fopen("nrtri.out","w");
    int i,j,k,n,cate=0;
    fscanf(fin,"%d",&n);
    for(i=1;i<=n;i++)
        fscanf(fin,"%d",&v[i]);
    sort(v+1,v+n+1);
    for(i=1;i<n;i++){
        k=i+2;
        for(j=i+1;j<n;j++){
            while(j>=k&&k<n)
                k++;
            while(v[i]+v[j]<=v[k]&&k<n)
                k++;
            if(v[i]+v[j]>v[k])
                cate+=n-k+1;
        }
    }
    fprintf(fout,"%d",cate);
    fclose(fin);
    fclose(fout);
    return 0;
}