Pagini recente » Cod sursa (job #2684277) | Cod sursa (job #1845609)
#include <fstream>
using namespace std;
ifstream in("1-sir.in");
ofstream out("1-sir.out");
const int MAXN = 257;
const int MAXS = MAXN * (MAXN - 1);
const int MODULO = 194767;
int n,s;
int d[MAXN][MAXS];
inline int modul(int x)
{
return (x >= 0)?x:-x;
}
void dinamica()
{
d[1][0] = 1;
for (int i = 2;i <= n;++i)
{
int lim = i * (i - 1) / 2;
for (int j = 0;j <= lim;++j)
d[i][j] = (d[i - 1][modul(j - (i - 1))] +
d[i - 1][modul(j + (i - 1))]) % MODULO;
}
}
int main()
{
in >> n >> s;
if (s < 0)
s = -s;
if (n * (n - 1) / 2 < s)
{
out << "0\n";
return 0;
}
dinamica();
out << d[n][s];
return 0;
}