Pagini recente » Cod sursa (job #1160337) | Cod sursa (job #1331495) | Cod sursa (job #1996716) | Cod sursa (job #2114818) | Cod sursa (job #1144857)
#include <algorithm>
#include <fstream>
#include <vector>
using namespace std;
ifstream in("oite.in");
ofstream out("oite.out");
const int mod= 666013, nmax = 1030;
int v[nmax];
vector <int> has[mod];
int n, l;
int sol;
int main()
{
int player_unu=0;
in>>n>>l;
for (int i = 1; i<=n; i++)
{
in>>v[i];
}
sort(v+1, v+n+1);
for(int i = 1; i<=n; i++)
{
for( int j = i+1; j<=n; j++)
{
if ( l >= v[i]+v[j] )
{
int x = l-v[i]-v[j];
for ( int it= 0; it<has[x%mod].size(); ++it )
{
if ( has[x%mod][it]==x )
{
sol++;
}
}
}
}
for(int j = i - 1; j>=1; j--)
{
has[(v[i]+v[j])%mod].push_back(v[i]+v[j]);
}
}
out << sol << "\n";
return player_unu;
}