Pagini recente » Cod sursa (job #1257377) | Cod sursa (job #3191128) | Cod sursa (job #1341833) | Cod sursa (job #1405700) | Cod sursa (job #1887500)
#include <bits/stdc++.h>
using namespace std;
int cautare_bin (vector<int > &a, int sum)
{
int i=0;
for(int step= (1<<19); step>0; step=step/2)
{
if(step+i<a.size() && a[step+i] < sum )
i+=step;
}
return i+1;
}
int main()
{
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n,moduri=0,sum=0;
f>>n;
vector<int> a(n+1,0);
for(int i=1; i<=n; i++)
{
f>>a[i];
}
sort(a.begin(),a.end());
for(int i=1; i<=n; i++)
{
for(int j=i+1; j<=n; ++j)
{
sum=a[i]+a[j]+1;
int k= cautare_bin(a,sum);
moduri=moduri+k;
cout<<moduri<<endl;
moduri-=j+1;
cout<<moduri<<endl;
}
}
g<<moduri;
return 0;
}