Pagini recente » Cod sursa (job #1129039) | Cod sursa (job #909949) | Cod sursa (job #3182785) | Cod sursa (job #2213930) | Cod sursa (job #2100536)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
vector<int> B;
int N;
int main()
{
f>>N;
int n;
for(int i=0;i<N;i++)
{
f>>n;
B.push_back(n);
}
sort(B.begin(),B.end());
long nrtri=0;
for(int i=N-1;i>1;i--) ///selectam primul bat
{
for(int j=i-1;j>0;j--) ///selectam al doilea bat
{
bool Stop=0;
for(int k=j-1;k>=0 && !Stop;k--) ///selectam al treilea bat si vf inegalitatea triunghiulara
{
if(B[i]>B[j]+B[k]) Stop=1;
if (!Stop) nrtri++;
}
}
}
g<<nrtri;
return 0;
}