Cod sursa(job #6738)

Utilizator grecoTiberiu-Lucian Florea greco Data 20 ianuarie 2007 19:36:56
Problema 1-sir Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
using namespace std;

#include <cstdio>

#define FIN "1-sir.in"
#define FOUT "1-sir.out"

#define MOD 194767

int n, t, s;
int T[1<<19];

int main()
{
	int i, j;
	freopen(FIN, "r", stdin);
	freopen(FOUT, "w", stdout);

	scanf("%d %d", &n, &s);
	t = n*(n-1)/2;

	if (s > t || s < -t || ((t-s)&1)) {
		printf("0\n");
		return 0;
	}
	
	T[0] = 1;
	for (i = 1; i <= n; ++i)
		for (j = (i*(i+1))/2-i; j >= 0; --j)
			(T[j+i] += T[j]) %= MOD;
	printf("%d\n", T[(t-s)/2]);
	
	return 0;
}