Cod sursa(job #1287660)

Utilizator Axel6470Irimia Alex Axel6470 Data 7 decembrie 2014 21:53:24
Problema Numarare triunghiuri Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1 kb
uses crt;
 
type vector=array[1..800] of longint;
 
var v:vector;
    f,g:text;
    k,j,x,nr,i,n:longint;
    rez:longint;
procedure sort;                 //sortez vectorul crescator cu ajutorul unei variabile auxiliare
var i,j,aux : longint;
begin
    for i:=1 to n-1 do
        for j:=i+1 to n do
            if v[i] > v[j] then
                begin
                    aux:=v[i];
                    v[i]:=v[j];
                    v[j]:=aux;
                end;
end;
 
begin
    assign(f,'nrtri.in');
    reset(f);
    assign(g,'nrtri.out');
    rewrite(g);
    read(f,n);
    rez:=0;
    for i:=1 to n do
        read(f,v[i]);
    sort;
    for i:=1 to n-2 do
        begin
            k:=i+2;
            for j:=i+1 to n do
                begin
                    while (k<=n) and (v[k] <= v[i]+v[j]) do
                        k:=k+1;
                    if k>j then rez:=rez+k-j-1;
                end;
        end;
    writeln(g,rez); 
    close(g);
    close(f);
end.