Cod sursa(job #2281537)

Utilizator catalinaioanaObreja Ioana Catalina catalinaioana Data 12 noiembrie 2018 14:10:43
Problema Numarare triunghiuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int v[1010], i, j, k, n, sol, st, dr;
int mid, suma;
int main () {
    f>>n;
    for (i=1;i<=n;i++)
        f>>v[i];
    sort(v+1, v+n+1);
    for (i=1;i<=n-2;i++)
        for (j=i+1;j<=n-1;j++)
        {
            suma = v[i] + v[j];
            st = j+1;
            dr = n;
            while (st <= dr)
            {
                int mid = (st + dr)/2;
                if (v[mid] < suma)
                    st = mid+1;
                else
                    dr = mid-1;
            }
            sol += dr-j;
        }
    g<<sol;
    return 0;
}