Pagini recente » Cod sursa (job #2169732) | Cod sursa (job #2887605) | Cod sursa (job #2624665) | Cod sursa (job #2089113) | Cod sursa (job #689061)
Cod sursa(job #689061)
#include<fstream>
#include<algorithm>
using namespace std;
long v[3001];
int main ()
{
long n,i,nr,p,q,ok,s,m,j;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
fin>>n;
nr=0;
for(i=1; i<=n; i++)
fin>>v[i];
sort(v+1, v+n+1);
for(i=1; i<=n-1; i++)
for(j=i+1; j<=n; j++)
{
ok=0;
p=1; q=n;
s=v[i]+v[j];
while(p<=q && ok==0)
{
m=(p+q)/2;
if(v[m]==s)
{
ok=1;
nr++;
}
else if (v[m]<s) p=m+1;
else q=m-1;
}
}
fout<<nr;
fin.close();
fout.close();
return 0;
}