Pagini recente » Cod sursa (job #2779275) | Cod sursa (job #9498) | Cod sursa (job #446608) | Rating bejan mama (mamalubejan) | Cod sursa (job #497132)
Cod sursa(job #497132)
#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;
int rez;
int main()
{
ifstream fin("oite.in");
ofstream fout("oite.out");
fin>>n>>l;
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++)
{
int 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++)
{
int a=vec[i]+vec[j];
int 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]==l && j<I->a)
rez++;
}
}
fout<<rez;
return 0;
}