Pagini recente » Cod sursa (job #1469341) | Cod sursa (job #2054270) | Cod sursa (job #23536) | Cod sursa (job #1397185) | Cod sursa (job #1218381)
#include<fstream>
#include<vector>
using namespace std;
ifstream cin("oite.in");
ofstream cout("oite.out");
const int P = 66013;
int n,l,i,j,a[1050],res=0;
vector<pair<int, pair<int,int> > > v[P];
int main()
{
cin>>n>>l;
for (i=1;i<=n;i++) cin>>a[i];
for (i=1;i<n;i++)
for (j=i+1;j<=n;j++)
v[(a[i]+a[j])%P].push_back(make_pair((a[i]+a[j]),make_pair(a[i], a[j])));
for (i=1;i<n;i++)
for (j=i+1;j<=n;j++) {
int x = (l - a[i] - a[j]), y=x % P;
if (a[i]+a[j]<l-a[i]-a[j]) continue;
for (int k=0;k<v[y].size();k++)
if (v[y][k].first==x && v[y][k].second.first!=a[i] && v[y][k].second.first!=a[j] && v[y][k].second.second!=a[i] && v[y][k].second.second!=a[j])
++res;
}
cout<<res;
return 0;
}