Pagini recente » Cod sursa (job #97593) | Cod sursa (job #428140) | Cod sursa (job #2798335) | Cod sursa (job #518195) | Cod sursa (job #2905540)
#include <bits/stdc++.h>
using namespace std;
ifstream in ("rucsac.in");
ofstream out ("rucsac.out");
#define mod 999979
int a[250001], b[250001], v[501];
int f[501];
int main()
{
int n, k;
in >> n >> k;
for (int i=1; i<=n; i++)
in >> v[i], f[v[i]]++;
a[0] = 1;
int maxim = 0;
for (int i=1; i<=n; i++)
{
for (int j=maxim; j>=0; j--)
{
if (a[j]==1)
{
if (j+v[i] <= k)
{
if (j+v[i] > maxim)
maxim = j+v[i];
a[j+v[i]] = 1;
b[j+v[i]] = (1+b[j+v[i]]) % mod;
}
}
}
}
int S = b[k];
out << S;
return 0;
}