Cod sursa(job #1601654)
| Utilizator | Data | 16 februarie 2016 09:40:45 | |
|---|---|---|---|
| Problema | Numarare triunghiuri | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
/*
code by purplecoder
*/
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("nrtri.in");
ofstream cout("nrtri.out");
const int MAX = 805;
int n, v[MAX], ans;
int main()
{
cin>>n;
for(int i=1; i<=n; ++i)
cin>>v[i];
sort(v+1, v+n+1);
for(int a=1; a<=n; ++a)
{
int c = a + 2;
for(int b = a + 1; b<=n-1; ++b)
{
while(c<=n and v[a]+v[b]>=v[c])
c++;
ans += c - b - 1;
}
}
cout<<ans;
return 0;
}
