Pagini recente » Cod sursa (job #1009008) | Statistici naseba levente (naseba) | Statistici Victor (victor_vatasescu) | Atasamentele paginii barosanii | Cod sursa (job #598328)
Cod sursa(job #598328)
#include <fstream>
#include <map>
using namespace std;
const char InFile[]="oite.in";
const char OutFile[]="oite.out";
const int MaxN=1024;
ifstream fin(InFile);
ofstream fout(OutFile);
int N,S,V[MaxN],sol;
map<int,int> m;
int main()
{
fin>>N>>S;
for(register int i=0;i<N;++i)
{
fin>>V[i];
}
fin.close();
for(register int i=2;i<N;++i)
{
for(register int j=i+1;j<N;++j)
{
++m[V[i]+V[j]];
}
}
for(register int i=1;i<N-2;++i)
{
for(register int j=0;j<i;++j)
{
sol+=m[S-V[i]-V[j]];
}
for(register int j=i+2;j<N;++j)
{
--m[V[i+1]+V[j]];
}
}
fout<<sol;
fout.close();
return 0;
}