Cod sursa(job #1875413)

Utilizator MihaelaCismaruMihaela Cismaru MihaelaCismaru Data 11 februarie 2017 01:56:03
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb

    #include<fstream>
    #include<algorithm>
    using namespace std;
    ifstream in("nrtri.in");
    ofstream out("nrtri.out");
    int n,i,j,s,v[10001],st,dr,mid,d;
    int main(){
           in>>n;
        for( i = 1; i <= n; i ++ ){
            in >> v[ i ];
        }
        sort(v+1,v+n+1);
        for( i = 1; i <= n-2; i ++ ){
            for(j = i + 1; j <= n-1; j ++ ){
                s=v[i]+v[j];
                st=j;
                dr=n;

                while(st<=dr){
                    mid=(st+dr)/2;

                    if(v[mid]<=s){
                        st=mid+1;

                    }
                    if(v[mid]>s){
                        dr=mid-1;
                    }

                }

                        d=d+st-j-1;



            }
        }
        out<<d;

    }