Cod sursa(job #1448156)

Utilizator IoanaaChriistinaaPascal Ioana-Cristina IoanaaChriistinaa Data 6 iunie 2015 13:09:45
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#include <algorithm>
using namespace std;
 
int n, i, v[805], j, st, dr, mij, nrtri;
 
ifstream in("nrtri.in");
ofstream out("nrtri.out");
 
int main(){
    in>>n;
    for(i=1;i<=n;i++)
	{
        in>>v[i];
    }
    sort(v+1, v+n+1);
    for(i=1;i<n-1;i++){
        for(j=i+1;j<n;j++){
            st = j+1;
            dr = n;
            while(st <= dr){
                mij = (st+dr)/2;
                if(v[mij] <= v[i]+v[j]){
                    st = mij+1;
                }else{
                    dr = mij-1;
                }
            }
            nrtri += dr-j;
        }
    }
    out<<nrtri;
}