Pagini recente » Cod sursa (job #1820988) | Cod sursa (job #2924237) | Cod sursa (job #2452019) | Cod sursa (job #1912785) | Cod sursa (job #497123)
Cod sursa(job #497123)
#include<fstream>
#include<algorithm>
#include<vector>
using namespace std;
struct nod{
short int a,b;
nod(){}
nod(short int I,short int J){
a=I;b=J;}
};
vector< nod > v[1000008];
long long vec[1034],l;
int n,rez;
int main()
{
ifstream fin("oite.in");
ofstream fout("oite.out");
fin>>n>>l;
short int i,j;
for(i=1;i<=n;i++)
fin>>vec[i];
sort(vec+1,vec+n+1);
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
{
long long a=vec[i]+vec[j];
a=a%1000000;
v[a].push_back(nod(i,j));
}
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
{
long long a=vec[i]+vec[j];
long long b=l-a;
if(b>0)
{
b=b%1000000;
for(vector< nod >::iterator I=v[b].begin();I<v[b].end();++I)
if(a+vec[I->a]+vec[I->b] && j<I->a)
rez++;
}
}
fout<<rez;
return 0;
}