Pagini recente » Cod sursa (job #212197) | Cod sursa (job #1311226) | Cod sursa (job #2571778) | Cod sursa (job #831126) | Cod sursa (job #529581)
Cod sursa(job #529581)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
const char iname[] = "oite.in";
const char oname[] = "oite.out";
const int nmax = 1200;
const int mod = 10057;
using namespace std;
ifstream fin(iname);
ofstream fout(oname);
int c, buildsum, i, j, n, sol;
int oaie[nmax];
vector<pair <int, int> > H[mod];
int county(int ceva)
{
int sol = 0;
for(int k = 0; k < H[ceva % mod].size(); k++)
{
if(i < H[ceva % mod][k].first && H[ceva % mod][k].second < j )
++sol;
}
return sol;
}
int main()
{
fin >> c >> buildsum;
for(i = 1; i <= c; i ++)
fin >> oaie[i];
for(i = 1; i <= c; i ++)
for(j = i + 1; j <= c; j ++)
H[(oaie[i] + oaie[j]) % mod].push_back(make_pair(i, j));
for(i = 1; i <= c; i ++)
for(j = i + 1; j <= c; j ++)
sol = sol + county(buildsum - oaie[i] - oaie[j]);
fout << sol;
return 0;
}