Pagini recente » Cod sursa (job #846525) | Cod sursa (job #1258445) | Cod sursa (job #754069) | Cod sursa (job #2263189) | Cod sursa (job #1489181)
#include <fstream>
#include <vector>
#define nmax 1026
#define hashing 66013
using namespace std;
ifstream f("oite.in");
ofstream g("oite.out");
vector <int> v[hashing];
int n,m,l,x[nmax];
int sol;
inline void adding(int x)
{
v[x%hashing].push_back(x);
}
inline void searching(int x)
{
int i,y=x%hashing;
for (i=0;i<v[y].size();i++)
if (v[y][i]==x)
sol++;
}
void solve()
{
int i,j,k;
for (i=1;i<=n;i++) {
for (j=i+1;j<=n;j++) {
k=l-x[i]-x[j];
if (k>0)
searching(k);
}
for (j=1;j<i;j++)
adding(x[i]+x[j]);
}
g<<sol<<'\n';
}
int main()
{
int i,j;
f>>n>>l;
for (i=1;i<=n;i++)
f>>x[i];
solve();
return 0;
}