Pagini recente » Cod sursa (job #1376594) | Cod sursa (job #1891430) | Cod sursa (job #2096360) | Cod sursa (job #1755730) | Cod sursa (job #1553541)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("oite.in");
ofstream fout("oite.out");
const int MOD = 6007;
const int DIM = 1025;
int N, S;
int a[DIM];
int ans;
vector<int> H[MOD];
int main()
{
fin >> N >> S;
for (int i = 1; i <= N; ++i)
fin >> a[i];
for (int i = 1; i < N; ++i)
{
for (int j = i + 1; j <= N; ++j)
{
int x = S - a[i] - a[j];
int line = x % MOD;
for (auto it = H[line].begin(); it != H[line].end(); ++it)
if (*it == x) ans++;
}
for (int j = 1; j < i; ++j)
{
int s = a[i] + a[j];
H[s % MOD].push_back(s);
}
}
fout << ans;
}