Cod sursa(job #3369209)
| Utilizator | Data | 17 octombrie 2026 17:31:56 | |
|---|---|---|---|
| Problema | Numarare triunghiuri | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream cin("nrtri.in");
ofstream cout("nrtri.out");
int main()
{
int n,i,j,s=0,x,cnt=0,val;
cin>>n;
vector <int>v(n+1);
for (i=1;i<=n;i++)
{
cin>>v[i];
}
sort (v.begin(),v.end());
for(i=1;i<=n-2;++i){
for (j=i+1;j<=n-1;j++)
{
s=v[i]+v[j];
auto it= upper_bound(v.begin()+j+1,v.end(),s);
val=distance(v.begin()+j+1,it);
cnt+=val;
}}
cout<<cnt<<'\n';
return 0;
}
