Pagini recente » Cod sursa (job #22938) | Cod sursa (job #2848917) | Cod sursa (job #1790420) | Cod sursa (job #3219917) | Cod sursa (job #1337940)
#include <fstream>
#include <map>
#include <set>
#define nmax 1030
using namespace std;
ifstream f("oite.in");
ofstream g("oite.out");
int n,l,s,sol,sol1;
int x[nmax];
multiset <int> v[nmax];
multiset <int> sum;
int main()
{
int i,j;
f>>n>>l;
for (i=1;i<=n;i++)
f>>x[i];
for (i=1;i<=n;i++)
for (j=i+1;j<=n;j++)
{sum.insert(x[i]+x[j]);
v[i].insert(x[i]+x[j]);
v[j].insert(x[i]+x[j]);
}
for (i=1;i<=n;i++)
for (j=i+1;j<=n;j++) {
s=x[i]+x[j];
sol1=0;
if (s<=l) {
sol1=sum.count(l-s);
sol1-=v[i].count(l-s);
sol1-=v[j].count(l-s);
if (l-s==s) sol1++;
}
sol+=sol1;
}
g<<sol/6;
return 0;
}